2011-06-24 51 views
2

我在opengl es 2.0中創建了一個應用程序。我的場景中有兩張圖紙。一個是條形圖,另一個是球體。我的條形圖將進行各種轉換,如旋轉和翻譯。我想讓球體控制圖形的各種轉換。我的主要目標是當我的條形圖執行轉換時,我的球體不應該。單個的opengles 2.0應用程序中的多個圖層

有人可以幫助我,我該如何做到這一點?我想我創建了多個繪圖層?如果是的話,你能否幫助我一樣?謝謝。

+0

嗨,這對我來說並不很清楚(什麼是你想實現將有助於也許樣機圖像)。但總的來說,OpenGL中沒有繪圖層。您可以在單個視圖中渲染具有不同轉換矩陣(=不同位置和移動)的兩個對象。如果需要裁剪,可以使用剪刀測試,或爲每個對象指定不同的視口(這兩種方法給出非常相似的結果,唯一的區別是如何計算座標)。 –

回答

0

您的要求很簡單,使用基本的OpenGL概念(如Model Matrix Push/Pop)可以實現最終結果。

您必須執行以下矩陣堆棧操作序列。

PUSH MATRIX 執行所需的變換(移動,旋轉着色器ETC) 拖動滑桿 POP MATRIX

PUSH MATRIX 繪製SPHERE POP MATRIX

關於層,我不知道有足夠的信息,但可以通過禁用DEPTH_TEST和尊重繪圖順序來實現。

例如

glDisable(GL_DEPTH_TEST); 進行無意識的繪圖。

乾杯 毛

相關問題