D3D10_SHADER常量
HLSL 编译选项。
#define | 说明 |
---|---|
D3D10_SHADER_AVOID_FLOW_CONTROL | 尽可能告知编译器不允许流控制 () 。 |
D3D10_SHADER_DEBUG | 插入调试文件/行/类型/符号信息。 |
D3D10_SHADER_ENABLE_STRICTNESS | 默认情况下,HLSL 编译器对已弃用的语法禁用严格性。 指定此标志可实现可能不允许旧语法的严格性。 |
D3D10_SHADER_ENABLE_BACKWARDS_COMPATIBILITY | 这使较旧的着色器能够编译为 4_0 目标。 |
D3D10_SHADER_FORCE_VS_SOFTWARE_NO_OPT | 为下一个最高着色器配置文件编译顶点着色器。 此选项) 关闭调试 (和优化。 |
D3D10_SHADER_FORCE_PS_SOFTWARE_NO_OPT | 为下一个最高着色器配置文件编译像素着色器。 此选项) 关闭调试 (和优化。 |
D3D10_SHADER_IEEE_STRICTNESS | 启用 IEEE 严格性。 |
D3D10_SHADER_NO_PRESHADER | 禁用 Preshaders。 使用此标志会导致编译器不提取静态表达式进行求值。 |
D3D10_SHADER_OPTIMIZATION_LEVEL0 | 最低优化级别。 可能会生成较慢的代码,但速度会更快。 这在高度迭代的着色器开发周期中可能很有用。 |
D3D10_SHADER_OPTIMIZATION_LEVEL1 | 第二最低优化级别。 |
D3D10_SHADER_OPTIMIZATION_LEVEL2 | 第二高优化级别。 |
D3D10_SHADER_OPTIMIZATION_LEVEL3 | 最高优化级别。 将生成可能的最佳代码,但可能需要更长的时间才能完成此操作。 这对于性能是最重要的因素的应用程序的最终生成非常有用。 |
D3D10_SHADER_PACK_MATRIX_ROW_MAJOR | 除非显式指定,否则矩阵将在着色器的输入和输出上按行主顺序打包。 |
D3D10_SHADER_PACK_MATRIX_COLUMN_MAJOR | 除非显式指定,否则矩阵将在着色器的输入和输出上按列主顺序打包。 这通常更有效,因为它允许使用一系列点积执行矢量矩阵乘法。 |
D3D10_SHADER_PARTIAL_PRECISION | 强制以部分精度完成所有计算;这可能在某些硬件上运行得更快。 |
D3D10_SHADER_PREFER_FLOW_CONTROL | 如果可能,请告知编译器使用流控制 () 。 |
D3D10_SHADER_SKIP_OPTIMIZATION | 在代码生成过程中跳过优化;通常建议仅用于调试。 |
D3D10_SHADER_SKIP_VALIDATION | 不要根据已知功能和约束验证生成的代码。 仅将它用于过去已成功编译的着色器。 在将着色器设置为设备之前,始终由 DirectX 对其进行验证。 |
D3D10_SHADER_WARNINGS_ARE_ERRORS | 在编译着色器代码时,通知 HLSL 编译器将所有警告视为错误。 对于新的着色器代码,应使用此选项,以便可以解决所有警告,并确保尽可能少难以找到的代码缺陷。 |
这些常量在 d3d10shader.h 中定义为宏。
相关主题