我想獲取一個模板緩衝區,但如果可能的話,不會承受附加深度緩衝區的開銷,因爲我不會使用它。我發現的大部分資源都表明,儘管模板緩衝區是可選的(例如,爲了獲得更多的深度緩衝區精度,不包括它),但我沒有看到任何代碼請求併成功獲取8位模板緩衝區。我見過的最常見的配置是具有8位模板緩衝區的24位深度緩衝區。OpenGL:僅獲取模板緩衝區並且沒有深度緩衝區?
是否有可能只請求帶有顏色緩衝區的模板緩衝區?
如果可能,這個請求是否可能被大多數OpenGL實現授予?我使用
OpenGL的版本爲2.0
編輯:
我使用調用OpenGL是SFML,通常不支持模板配置爲它的API的FBO包裝對象,儘管它允許顯示錶面的幀緩衝區。我編輯了自己的功能,雖然這是我卡住的地方。
glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_DEPTH24_STENCIL8_EXT, width, height));
此行決定我假設的存儲類型。然而,GL_DEPTH24_STENCIL8_EXT
是我發現的唯一指定了模板緩衝區創建的定義。 (有沒有GL_STENCIL8或任何類似至少)
你應該可以。我知道你一定可以用FBO來做。 – Xonar
是的。這是可能的,這取決於你用什麼來實現它。你用什麼窗口(glut/SDL/GLFW等)? – Xonar
我正在使用SFML,它'通常'不允許它的FBO包裝器請求模板緩衝區。但我在自己身上黑了。我可以將它編輯到問題 –