2015-05-19 181 views
0

使用libGDX我創建了幾個2D屏幕,例如閃屏和主菜單,還創建了一個3D場景,我希望能夠在點擊按鈕時加載主菜單。
我知道如何添加偵聽器,但我不知道用什麼命令來在屏幕上顯示3D場景。如果我使用setScreen(new World3D)(或其它類似的擴展方法),它給了我:
World3D cannot be cast to com.badlogic.gdx.ScreenlibGDX:從2D屏幕打開3D場景

我想知道的是如何從2D畫面到3D場景。我是否將3D場景包裹在屏幕中,還是我正確地做了,但是我的World3D類沒有正確設置?
Here是我的World3D類的一個pastebin,如果是問題。

注:這些類位於單獨的子包中,但正確的導入已添加到所需的類中。

回答

2

首先,Screen既不是2D也不是3D。它只是一個界面。如果有什麼特別的(pauseresume ...)發生,它的方法通常由ApplicationListener調用。
你的問題在於,你的World3DApplicationListener
ApplicationListener是每個Libgdx遊戲的核心,如果發生某些事件,它會通過後端得到通知。
你的情況應該是Screen。您可以簡單地將您的GameScreen設置爲World3DScreen,它會調用render方法。

我建議你在開始創建遊戲之前閱讀Libgdx Wiki