Contents
Which is HLSL model does Direct3D 12 support?
This topic describes some specific features of using High Level Shader Language (HLSL) Shader Model 5.1 with Direct3D 12. All Direct3D 12 hardware supports Shader Model 5.1, so support for this model does not depend on what the hardware feature level is.
When to use HLSL or DXBC in RGA?
If the shader model is 5.0 or below, RGA uses the runtime (D3DCompiler*.dll) to compile HLSL to DXBC and uses the generated DXBC in the pipeline. When using HLSL source code as your input, you have 3 different ways in which you can provide your root signature to RGA:
Do you need HLSL 5.1 for dynamic indexing?
Both attributes are defined in the root signature of the pipeline state object used with the shader. To take advantage of the dynamic indexing features in HLSL requires that the shader be compiled with SM 5.1.
Can a shader be compiled with HLSL 5.1?
The shader has no knowledge of the size or the array or the value of the index at compile-time. Both attributes are defined in the root signature of the pipeline state object used with the shader. To take advantage of the dynamic indexing features in HLSL requires that the shader be compiled with SM 5.1.
Which is shader model does Direct3D 12 support?
All Direct3D 12 hardware supports Shader Model 5.1, so support for this model does not depend on what the hardware feature level is. Shader Model 5 (SM5.0) resource syntax uses the register keyword to relay important information about the resource to the HLSL compiler.
What are the output semantics of HLSL shaders?
Input semantics are similar to the values in the D3DDECLUSAGE. The output structure identifies the vertex shader output parameters of position and color. These outputs will be used by the pipeline for triangle rasterization (in primitive processing).
How are descriptor arrays used in HLSL Win32?
Note the awkward use of a float for the array index is replaced with myArrayOfTex2D [2]. Also descriptor arrays offer more flexibility with the dimensions. The type, Texture2D is this example, cannot vary, but the format, width, height, and mip count can all vary with each descriptor.