Правильный способ смешивания в WebGl - PullRequest
2 голосов
/ 08 декабря 2010

У меня есть пара проблем при смешивании в WebGL. Одним из них является способ отображения цветов независимо от значения альфа-канала при включенном смешивании. Это означает, что более темные цвета всегда смешиваются с тем, что внизу, даже если альфа установлена ​​на 1,0. Да, более яркие цвета отображаются по-разному в зависимости от значения альфа-канала, поэтому я думаю, что нет проблем с настройкой моих шейдеров.

Опять же, у меня еще не было возможности отрисовать полную сцену, я сейчас занимаюсь только тестированием с WebGl, поэтому я рисую простой объект поверх фона по умолчанию. Будут ли эти проблемы с "смешиванием" исправлены после того, как я отрисовываю каждый бит экрана, используя объекты, или это ограничение для WebGL?

1 Ответ

2 голосов
/ 03 февраля 2011

Попробуйте установить функцию смешивания следующим образом:

 gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA);

Это должно быть по умолчанию, по крайней мере, в Firefox.

...