Субтрактивное смешивание с OpenGL? - PullRequest
1 голос
/ 29 июля 2010

Я хотел бы, например, нарисовать фигуры A, B, C, затем установить блендер, затем нарисовать фигуру D и везде, где фигура D, сцена показывает мой цвет фона (1,1,1,0).Спасибо

Ответы [ 3 ]

4 голосов
/ 29 июля 2010

Я не знаю, что это возможно напрямую. Хотя есть несколько возможностей получить тот же эффект. Самым чистым, вероятно, было бы начать с заполнения буфера трафарета цифрами 1, затем рисовать фигуру D в буфере трафарета нулями, а затем рисовать все остальное (конечно, с включенным буфером трафарета).

0 голосов
/ 30 июля 2010

Гораздо проще, чем другие ответы:

  • Отображение форм A, B и C обычным образом
  • glDisable (GL_DEPTH_TEST);
  • glDisable (GL_ALPHA_TEST);
  • glDisable (GL_BLEND);
  • Отображение формы D с цветом (1,1,1,0)

и все готово.

0 голосов
/ 29 июля 2010

glBlendEquation может это сделать.

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