2012-12-24 45 views
1

我一直有一個問題,試圖讓OpenGL 3.2工作,並花了幾個小時後,試圖找出什麼是錯的,我意識到它不支持glBegin。我在我的引擎中使用該命令可能需要大約50-100次才能繪製全屏四邊形和GUI元素。那麼用OpenGL 3.2畫一個矩形的簡單方法是什麼?我是否真的必須創建一個頂點緩衝區,片段着色器和頂點着色器來做這麼簡單的事情?如何在OpenGL 3.2中繪製全屏四邊形?

+0

如果您想使用_modern_ api,那麼是的,您將不得不創建頂點和片段着色器...除非使用兼容性擴展,否則固定管道已消失。 –

+0

您可以隨時恢復到兼容性配置文件,但是在使用更新的版本時無法獲得任何內容。使用固定管道也沒有意義。可編程管道不是未來,它已經在這裏。 –

回答

4

我是否真的必須創建一個頂點緩衝區,片段着色器和頂點着色器來做這麼簡單的事情?

是的,核心配置文件中沒有贈品。

+0

當這是要吸... – SteveDeFacto

+2

@SteveDeFacto:不是。編寫着色器要比處理固定功能管道中涉及的所有狀態管理要少得多。使用着色器,它只是一個簡單的'glUseProgram',它具有固定的管道,包含了大量的glEnable和glDisable調用,至少設置了投影和模型視圖,設置了十幾個glTexEnvi調用以獲得正確的紋理等。 – datenwolf

+0

它會最終會更好,但它會吸收轉換我的整個圖書館。 – SteveDeFacto