You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Version 1.1 DescriptorRange_V1_1 extends the base structure with performance optimization flags.
625
-
626
-
#. **Flags**: Provide additional information about the descriptors and enable further driver optimizations.
627
-
For details, check `Direct X documentation <https://learn.microsoft.com/en-us/windows/win32/direct3d12/root-signature-version-1-1#static-and-volatile-flags>`_.
628
-
629
522
Static Samplers
630
523
~~~~~~~~~~~~~~~
631
524
632
-
Static samplers provide a way to define fixed sampler states within the root signature itself.
525
+
Static samplers are predefined filtering settings built into the root signature, avoiding descriptor heap lookups.
526
+
527
+
This section also has a variable size. The size is 68 bytes long, containing the following fields: 32 bits for a
528
+
filter mode, three 32 bit fields for texture address mode, 64 bits for the bias value of minmap level calculation,
529
+
32 bits for maximum anisotropy level, 32 bits for the comparison function type, 32 bits for the static border colour,
530
+
two 64 bit fields for the min and max level of detail, two 32 bit fields for the register number and space and finally
531
+
32 bits for the shader visibility flag.
633
532
634
533
.. code-block:: c
635
534
636
535
struct StaticSamplerDesc {
637
-
FilterMode Filter;
536
+
FilterMode Filter;
638
537
TextureAddressMode AddressU;
639
538
TextureAddressMode AddressV;
640
539
TextureAddressMode AddressW;
641
540
float MipLODBias;
642
541
uint32_t MaxAnisotropy;
643
-
ComparisonFunc ComparisonFunc;
542
+
ComparisonFunc ComparisonFunc;
644
543
StaticBorderColor BorderColor;
645
544
float MinLOD;
646
545
float MaxLOD;
@@ -649,24 +548,3 @@ Static samplers provide a way to define fixed sampler states within the root sig
649
548
ShaderVisibility ShaderVisibility;
650
549
};
651
550
652
-
653
-
The StaticSamplerDesc structure defines all properties of a static sampler:
654
-
655
-
#. **Filter**: The filtering mode (e.g., point, linear, anisotropic) used for texture sampling.
656
-
For details, check `Static Sampler Fileters definition. <https://learn.microsoft.com/en-us/windows/win32/api/d3d12/ne-d3d12-d3d12_filter#syntax>`_.
657
-
#. **AddressU**: The addressing mode for the U texture coordinate.
658
-
For details, check `Texture address mode definition. <https://learn.microsoft.com/en-us/windows/win32/api/d3d12/ne-d3d12-d3d12_texture_address_mode>`_.
659
-
#. **AddressV**: The addressing mode for the V texture coordinate.
660
-
#. **AddressW**: The addressing mode for the W texture coordinate.
661
-
#. **MipLODBias**: Bias value applied to mipmap level of detail calculations.
662
-
#. **MaxAnisotropy**: Maximum anisotropy level when using anisotropic filtering.
663
-
#. **ComparisonFunc**: Comparison function used for comparison samplers.
664
-
For details, check `Comparison Function definition. <https://learn.microsoft.com/en-us/windows/win32/api/d3d12/ne-d3d12-d3d12_comparison_func>`_.
665
-
#. **BorderColor**: Predefined border color used when address mode is set to border.
666
-
For details, check `Static border color <https://learn.microsoft.com/en-us/windows/win32/api/d3d12/ne-d3d12-d3d12_static_border_color>`_.
667
-
#. **MinLOD**: Minimum level of detail to use for sampling.
668
-
#. **MaxLOD**: Maximum level of detail to use for sampling.
669
-
#. **ShaderRegister**: The shader sampler register (s#) where this sampler is bound.
670
-
#. **RegisterSpace**: The register space used for the binding.
671
-
#. **ShaderVisibility**: Specifies which shader stages can access this sampler.
672
-
For details, check `Shader Visibility definition. <https://learn.microsoft.com/en-us/windows/win32/api/d3d12/ne-d3d12-d3d12_shader_visibility>`_.
0 commit comments