Итак, я читаю статью по конкретному алгоритму затенения, и есть один раздел, который кажется немного расплывчатым, и мне было интересно, могу ли я получить совет здесь.Проходящий буфер глубины
В основном это говорит о том, что мне сначала нужно взять трехмерную вершину сетки и преобразовать ее в координаты окна wx, wy, wz, где wz - глубина. Эта часть, которую я сделал.
Далее я должен проверить, не является ли эта координата окна «пройденным» буфером глубины или нет.
Это все, что он говорит, и я не уверен, что это означает, «пройдя» буфер глубины. Кто-нибудь знает, что это может означать и как я могу реализовать это в openGL?
EDIT:
Более конкретно, мне нужно OPENGL предложить мне обратную связь, чтобы прошел ли или нет конкретная вершина буфера глубины. Я на самом деле не создаю эти вершины, поэтому мне нехорошо, если openGL выполняет все вычисления «за кулисами».
Вы искали это в Википедии? http://en.wikipedia.org/wiki/Z-buffering – acrilige
да, но это было немного запутанно. Поэтому я знаю, что мой компонент «wz» - это глубина пикселя, но то, о чем я запутался, очевидно, что openGL имеет встроенное значение z-buffer, которое я могу сравнить с моим термином wz, но я не знаю, как получить доступ это начальное значение z. – user1782677
Посмотрите обзор конвейера OpenGL, например здесь: http://www.opengl.org/wiki/Rendering_Pipeline_Overview#Rasterization. На этой странице представлено описание глубины. На самом деле, это часть конвейера, которую вы можете отключить или нет, но вам не нужно делать этот тест глубины самостоятельно – acrilige