Как записать / предотвратить запись в буфер глубины OpenGL в GLSL

Я хочу записывать в буфер глубины OpenGL, только если текущий пиксель имеет альфа> 0,5 как это сделать?

Если у пикселя альфа <0,5, я хочу визуализировать цвет, но не записывать его глубину в буфер глубины. Команда discard не то, что я ищу, поскольку она отбрасывает информацию как о цвете, так и о глубине; Я хочу только отбросить информацию о глубине.

Существует переменная gl_FragDepth , которую можно установить, но какое значение? А для случая альфа <0,5, как оставить gl_FragDepth без изменений?

Должен ли я использовать для этого FBO, или он также должен работать без? Я работаю над проектом GLES 2.0 Android

9
задан genpfault 26 April 2011 в 18:08
поделиться