2016-12-30 59 views
0

我有3D,Y-了世界,透視相機保持一個對象在相同的視覺屏幕位置。 當我開始我的世界,我的相機是在位置(0,2,0)在看(0,0,1)。 現在我在(10,5,10)放置3D模型。 (讓它成爲一個立方體)LibGDX:如何同時轉動相機

需要採取哪些措施(平移,旋轉,...),以保持該對象在視覺上,當我開始旋轉攝像頭周圍的3軸甚至翻譯相同的位置/移動它?

如果我希望能夠改變模型的位置,但保持模型的距離,相機同樣會進一步需要什麼?

我想要達到的目標是我可以顯示玩家當前的高分,並且不管玩家看到的位置,它總是會在例如右上角。在一個正常的應用程序,我可以使用Scene2D對於這一點,但我對谷歌的紙板開發,Scene2D不工作了。 (因爲我們對每隻眼睛有兩種不同的透視視圖設置,所以這些不能用於舞臺的OrthographicCamera)。

回答

0

所以,你在這裏要做的事情可以通過給立方體一個相對於相機變換的變換來以數學方式完成 - 從本質上講,就相關立方體而言,使相機成爲原點。然而,如果我可能會建議一種更好的方式 - 您可以創建一個單獨的PerspectiveCamera,它保留在原點(或任何位置),並負責將UI分別渲染到遊戲的其餘部分。它使用與Scene2D相同的原理,但不那麼複雜,如果您不支持Google Cardboard,以後可以輕鬆切換您的用戶界面。

+0

你的第二個方法似乎是正確的前進道路。我知道它的UI面板顯示「靜態」,但現在的問題是,它被地板層切斷,這看起來很滑稽,當我點頭相機上下。我如何告訴openGL處理​​與第一個繪圖步驟分開的第二個繪圖步驟? – mbauer