Включает или отключает режим альфа-покрытие на графическом процессоре.
Режим альфа-покрытия может уменьшить чрезмерное сглаживание, возникающее при использовании мультивыборочного сглаживания (MSAA) с шейдерами, использующими альфа-тестирование, например с шейдерами растительности. Для этого он изменяет маску мультисемплового покрытия пропорционально значению альфа-канала в выходных данных фрагмента shaderПрограмма, работающая на графический процессор. Подробнее
Посмотреть в Словарь результат.
Эта команда предназначена для использования с MSAA. Если вы включите режим альфа-покрытия, когда вы не используете MSAA, результаты могут быть непредсказуемыми; разные графические API и графические процессоры обрабатывают это по-разному.
Совместимость конвейера рендеринга
Название функции | Встроенный конвейер рендеринга | Универсальный конвейер рендеринга (URP) | Конвейер рендеринга высокого разрешения (HDRP) | Пользовательская SRP |
---|---|---|---|---|
AlphaToMask | Да | Да | Да | Да |
Использование
Эта команда изменяет состояние рендеринга. Используйте его в блоке Pass
, чтобы задать состояние рендеринга для этого Pass, или используйте его в блоке SubShader
, чтобы задать рендеринг. состояние для всех проходов в этом субшейдере.
Подпись | Пример синтаксиса | Функции |
---|---|---|
AlphaToMask |
AlphaToMask Off |
Включает или отключает режим альфа-покрытия. |
Действительные значения параметров
Параметры | Значение | Функции |
---|---|---|
state | On |
Включает режим альфа-покрытия. |
Off |
Отключает режим альфа-покрытия. |
Примеры
Shader "Examples/CommandExample"
{
SubShader
{
// The rest of the code that defines the SubShader goes here.
Pass
{
// Enable alpha-to-coverage mode for this Pass
AlphaToMask On
// The rest of the code that defines the Pass goes here.
}
}
}
В этом примере кода демонстрируется синтаксис использования этой команды в блоке SubShader.
Shader "Examples/CommandExample"
{
SubShader
{
// Enable alpha-to-coverage mode for this SubShader
AlphaToMask On
// The rest of the code that defines the SubShader goes here.
Pass
{
// The rest of the code that defines the Pass goes here.
}
}
}