2013-05-06 127 views
0

OpenGL wiki說爲了使用模板緩衝區附件和FBO中的深度緩衝區,需要創建格式類型爲GL_DEPTH24_STENCIL8的渲染緩衝區,因爲GL_STENCIL_INDEXX似乎沒有實現。FBO深度和模板渲染緩衝區附件

我不明白的是,如果我將其設置爲GL_DEPTH_STENCIL_ATTACHMENT,這樣的緩衝區是否也是深度緩衝區?或者我應該仍然創建格式(GL_DEPTH_COMPONENTXX)單獨的深度渲染緩衝區?

+0

你在哪個平臺上? – tadman 2013-05-06 11:21:51

+0

Linux/Windows OpenGL4.2 – 2013-05-06 11:23:25

回答

3

這不是STENCIL_INDEX格式沒有「實施」。這是規範不要求實施考慮他們是完整的。執行允許爲reject a combination of image formats for whatever reasons it deems fit,,除非你堅持list of required image formats

深度/模版圖像中有深度和模板,就像紅/綠圖像中有紅色和綠色一樣。所以是的,你attach the same imageGL_DEPTH_ATTACHMENTGL_STENCIL_ATTACMENT點。或者您使用GL_DEPTH_STENCIL_ATTACHMENT作爲兩者的簡寫。

+0

我實際上嘗試使用GL_STENCIL_INDEX,它總是導致不完整的FBO。在同一個wiki中也有人說「不要這樣做!」;) – 2013-05-06 12:08:46