OpenGL - Как работает прозрачность? - PullRequest
5 голосов
/ 04 августа 2010

Нужны ли альфа-каналы для прозрачности для работы в OpenGL?я могу использовать glBlendFunc или что-нибудь еще, чтобы сделать черный или белый цвет прозрачным / невидимымесли да, то как это сделать?

Ответы [ 2 ]

2 голосов
/ 04 августа 2010

Нет, вам не нужен альфа-канал в ваших текстурах. Вызовите discard в своем фрагментном шейдере для всех фрагментов, которые соответствуют правилу прозрачности.

2 голосов
/ 04 августа 2010

Да, вам нужны альфа-каналы, чтобы использовать прозрачность.Вы можете эмулировать поведение цветовой клавиатуры, используя шейдеры, или обрабатывая изображение и заменяя цветовой ключ пикселями с альфа = 0.0.

Обратите внимание, что графические процессоры всегда выделяют текстуры RGBA, даже если вам нужна текстура RGB.Альфа-канал все еще присутствует в аппаратном обеспечении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...