2011-09-23 104 views
0

我使用libgdx,我裝我所有的紋理,如下圖所示,紋理加載

Texture objTexture=new Texture(Gdx.files.internal("imagename")); 

此代碼是我ApplicationListener內。但是,我想在我的遊戲開始時加載所有圖像。我不想將它們加載到ApplicationListener中。我嘗試訪問OpenGL範圍之外的紋理對象並失敗。任何人都可以在此建議我嗎?

回答

1

我認爲你可以加載這些紋理(它涉及到將它們上傳到VRAM中,所以我猜圖形模塊必須被初始化並且完成所有GL工作)在ApplicationListenercreate函數中。

此外,您可以考慮使用新的AssetManager來管理您的資源。或者寫一個更簡單的資產管理器。

+0

,感謝您的回答。但事實是,在libgdx我們可以加載通過文件句柄,像素圖等紋理,我一直在使用他們ApplicationListener的範圍之外加載圖像,但IAM沒有得到屏幕上的圖像。屏幕完全轉向white.If我寫他們在創建ApplicationListener,每一個圖像越來越加載時間,即使從一個層次到另一個層次shifiting。 – pradeepkalla

+1

對不起......所以,你加載圖像數據了ApplicationListener的範圍之內,不能用它組成一個紋理(它上傳到VRAM)?把原始字節複製到Pixmap然後用它創建一個Texture?你有沒有試過在http://badlogicgames.com/forum/中提出這個問題? – huff

+0

我已經將原始字節複製到一個像素圖,但性能沒有太大差別。以及如何將紋理加載到VRAM,我不知道你it.Can幫我我沒有提出我的問題在論壇上的任何鏈接或tutrial.And想法。 – pradeepkalla