Константы 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.
Связанные темы