структура D3D10_1DDIARG_CREATESHADERRESOURCEVIEW (d3d10umddi.h)
Структура D3D10_1DDIARG_CREATESHADERRESOURCEVIEW описывает создаваемое представление ресурсов шейдера.
Синтаксис
typedef struct D3D10_1DDIARG_CREATESHADERRESOURCEVIEW {
[in] D3D10DDI_HRESOURCE hDrvResource;
[in] DXGI_FORMAT Format;
[in] D3D10DDIRESOURCE_TYPE ResourceDimension;
union {
[in] D3D10DDIARG_BUFFER_SHADERRESOURCEVIEW Buffer;
[in] D3D10DDIARG_TEX1D_SHADERRESOURCEVIEW Tex1D;
[in] D3D10DDIARG_TEX2D_SHADERRESOURCEVIEW Tex2D;
[in] D3D10DDIARG_TEX3D_SHADERRESOURCEVIEW Tex3D;
[in] D3D10_1DDIARG_TEXCUBE_SHADERRESOURCEVIEW TexCube;
};
} D3D10_1DDIARG_CREATESHADERRESOURCEVIEW;
Члены
[in] hDrvResource
Дескриптор ресурса шейдера.
[in] Format
DXGI_FORMAT типизированное значение, указывающее формат пикселя представления.
[in] ResourceDimension
D3D10DDIRESOURCE_TYPE типизированное значение, указывающее тип ресурса и размерность.
[in] Buffer
Если значение в элементе ResourceDimension равно D3D10DDIRESOURCE_BUFFER, то элемент в объединении, который содержится в D3D10_1DDIARG_CREATESHADERRESOURCEVIEW, который может содержать D3D10DDIARG_BUFFER_SHADERRESOURCEVIEW структуру для буфера.
[in] Tex1D
Если значение в элементе ResourceDimension равно D3D10DDIRESOURCE_TEXTURE1D, элемент в объединении, который содержится в D3D10_1DDIARG_CREATESHADERRESOURCEVIEW, который может содержать D3D10DDIARG_TEX1D_SHADERRESOURCEVIEW структуру для одномерной текстуры.
[in] Tex2D
Если значение в элементе ResourceDimension равно D3D10DDIRESOURCE_TEXTURE2D, то элемент в объединении, который содержится в D3D10_1DDIARG_CREATESHADERRESOURCEVIEW, который может содержать D3D10DDIARG_TEX2D_SHADERRESOURCEVIEW структуру для двумерной текстуры.
[in] Tex3D
Если значение в элементе ResourceDimension равно D3D10DDIRESOURCE_TEXTURE3D, то элемент в объединении, который содержится в D3D10_1DDIARG_CREATESHADERRESOURCEVIEW, который может содержать D3D10DDIARG_TEX3D_SHADERRESOURCEVIEW структуру для трехмерной текстуры.
[in] TexCube
Если значение в элементе ResourceDimension равно D3D10DDIRESOURCE_TEXTURECUBE, то элемент в объединении, который содержится в D3D10_1DDIARG_CREATESHADERRESOURCEVIEW, который может содержать структуру D3D10DDIARG_TEXCUBE_SHADERRESOURCEVIEW для текстуры куба.
Комментарии
Функция CreateShaderResourceView(D3D10_1) существенно отличается от Direct3D версии 10.0 (т. е. CreateShaderResourceView) в отношении элемента ResourceDimension D3D10_1DDIARG_CREATESHADERRESOURCEVIEW. Если среда выполнения Direct3D пытается создать представление для ресурса шейдера, createShaderResourceView требует, чтобы элемент ResourceDimensionD3D10DDIARG_CREATESHADERRESOURCEVIEW совпадал с элементом ResourceDimensionD3D10DDIARG_CREATERESOURCE для ресурса шейдера, созданного при вызове функции CreateResource(D3D10) драйвера. Если среда выполнения Direct3D 10.1 пытается создать представление для ресурса шейдера, CreateShaderResourceView(D3D10_1) позволяет немного расслабиться для элемента ResourceDimension . CreateShaderResourceView(D3D10_1) позволяет создавать представления Tex2D для ресурсов TexCube. Кроме того, в Direct3D версии 10.1 отсутствует различие между TexCube на уровне ресурсов. CreateShaderResourceView(D3D10_1) только указывает, может ли он создать представление TexCube. В Direct3D версии 10.0 копирование ресурса, проверка нескольких целевых объектов отрисовки и т. д. (т. е. различные операции, которые требовали, чтобы тип ресурса был идентичным) включали различие TexCube для определения типа ресурса. В Direct3D версии 10.1 среда выполнения может определять только Tex2D.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista с пакетом обновления 1 (SP1) |
Минимальная версия сервера | Windows Server 2008 |
Верхняя часть | d3d10umddi.h (включая D3d10umddi.h) |
См. также раздел
CalcPrivateShaderResourceViewSize(D3D10_1)
CreateShaderResourceView(D3D10_1)
D3D10DDIARG_BUFFER_SHADERRESOURCEVIEW
D3D10DDIARG_TEX1D_SHADERRESOURCEVIEW
D3D10DDIARG_TEX2D_SHADERRESOURCEVIEW
D3D10DDIARG_TEX3D_SHADERRESOURCEVIEW