Поделиться через


структура D3D11_SHADER_DESC (d3d11shader.h)

Описывает шейдер.

Синтаксис

typedef struct _D3D11_SHADER_DESC {
  UINT                             Version;
  LPCSTR                           Creator;
  UINT                             Flags;
  UINT                             ConstantBuffers;
  UINT                             BoundResources;
  UINT                             InputParameters;
  UINT                             OutputParameters;
  UINT                             InstructionCount;
  UINT                             TempRegisterCount;
  UINT                             TempArrayCount;
  UINT                             DefCount;
  UINT                             DclCount;
  UINT                             TextureNormalInstructions;
  UINT                             TextureLoadInstructions;
  UINT                             TextureCompInstructions;
  UINT                             TextureBiasInstructions;
  UINT                             TextureGradientInstructions;
  UINT                             FloatInstructionCount;
  UINT                             IntInstructionCount;
  UINT                             UintInstructionCount;
  UINT                             StaticFlowControlCount;
  UINT                             DynamicFlowControlCount;
  UINT                             MacroInstructionCount;
  UINT                             ArrayInstructionCount;
  UINT                             CutInstructionCount;
  UINT                             EmitInstructionCount;
  D3D_PRIMITIVE_TOPOLOGY           GSOutputTopology;
  UINT                             GSMaxOutputVertexCount;
  D3D_PRIMITIVE                    InputPrimitive;
  UINT                             PatchConstantParameters;
  UINT                             cGSInstanceCount;
  UINT                             cControlPoints;
  D3D_TESSELLATOR_OUTPUT_PRIMITIVE HSOutputPrimitive;
  D3D_TESSELLATOR_PARTITIONING     HSPartitioning;
  D3D_TESSELLATOR_DOMAIN           TessellatorDomain;
  UINT                             cBarrierInstructions;
  UINT                             cInterlockedInstructions;
  UINT                             cTextureStoreInstructions;
} D3D11_SHADER_DESC;

Члены

Version

Тип: UINT

Версия шейдера.

Creator

Тип: LPCSTR

Имя инициатора шейдера.

Flags

Тип: UINT

Флаги компиляции и анализа шейдера.

ConstantBuffers

Тип: UINT

Количество буферов констант шейдера.

BoundResources

Тип: UINT

Количество ресурсов (текстур и буферов), привязанных к шейдеру.

InputParameters

Тип: UINT

Количество параметров во входной сигнатуре.

OutputParameters

Тип: UINT

Количество параметров в выходной сигнатуре.

InstructionCount

Тип: UINT

Количество инструкций на промежуточном языке в скомпилированном шейдере.

TempRegisterCount

Тип: UINT

Количество временных регистров в скомпилированном шейдере.

TempArrayCount

Тип: UINT

Количество используемых временных массивов.

DefCount

Тип: UINT

Число определений констант.

DclCount

Тип: UINT

Количество объявлений (входные и выходные данные).

TextureNormalInstructions

Тип: UINT

Количество инструкций текстуры, не относящихся к категории.

TextureLoadInstructions

Тип: UINT

Число инструкций по загрузке текстур

TextureCompInstructions

Тип: UINT

Инструкции по сравнению с количеством текстур

TextureBiasInstructions

Тип: UINT

Число инструкций смещения текстуры

TextureGradientInstructions

Тип: UINT

Число инструкций по градиенту текстуры.

FloatInstructionCount

Тип: UINT

Количество используемых арифметических инструкций с плавающей запятой.

IntInstructionCount

Тип: UINT

Число используемых арифметических инструкций со знаком.

UintInstructionCount

Тип: UINT

Число арифметических инструкций без знака.

StaticFlowControlCount

Тип: UINT

Количество используемых инструкций управления статическим потоком.

DynamicFlowControlCount

Тип: UINT

Количество используемых инструкций по управлению динамическим потоком.

MacroInstructionCount

Тип: UINT

Количество используемых инструкций макросов.

ArrayInstructionCount

Тип: UINT

Количество используемых инструкций массива.

CutInstructionCount

Тип: UINT

Количество используемых инструкций для вырезания.

EmitInstructionCount

Тип: UINT

Количество используемых инструкций выдачи.

GSOutputTopology

Тип: D3D_PRIMITIVE_TOPOLOGY

D3D_PRIMITIVE_TOPOLOGY типизированное значение, представляющее топологию выходных данных геометрического шейдера.

GSMaxOutputVertexCount

Тип: UINT

Максимальное число выходных вершин шейдера геометрии.

InputPrimitive

Тип: D3D_PRIMITIVE

D3D_PRIMITIVE типизированное значение, представляющее входной примитив для геометрического шейдера или шейдера корпуса.

PatchConstantParameters

Тип: UINT

Число параметров в сигнатуре константы исправления.

cGSInstanceCount

Тип: UINT

Количество экземпляров геометрического шейдера.

cControlPoints

Тип: UINT

Количество контрольных точек в шейдере корпуса и шейдере предметной области.

HSOutputPrimitive

Тип: D3D_TESSELLATOR_OUTPUT_PRIMITIVE

Значение типа D3D_TESSELLATOR_OUTPUT_PRIMITIVE, представляющее тип примитив вывода tessellator.

HSPartitioning

Тип: D3D_TESSELLATOR_PARTITIONING

D3D_TESSELLATOR_PARTITIONING типизированное значение, представляющее режим секционирования tessellator.

TessellatorDomain

Тип: D3D_TESSELLATOR_DOMAIN

D3D_TESSELLATOR_DOMAIN типизированное значение, представляющее домен tessellator.

cBarrierInstructions

Тип: UINT

Количество инструкций барьера в вычислительном шейдере.

cInterlockedInstructions

Тип: UINT

Число взаимосвязанных инструкций в вычислительном шейдере.

cTextureStoreInstructions

Тип: UINT

Число операций записи текстур в вычислительном шейдере.

Комментарии

Шейдер записывается на языке HLSL и компилируется на промежуточный язык компилятором HLSL. Описание шейдера возвращает сведения о скомпилированном шейдере. Получите описание шейдера, вызвав ID3D11ShaderReflection::GetDesc.

Требования

   
Верхняя часть d3d11shader.h

См. также раздел

Структуры шейдеров