Константы 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 | Отключает префигуры. Использование этого флага приведет к тому, что компилятор не будет извлекать статическое выражение для оценки. |
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.
Связанные темы