2013-07-08 173 views
0

解釋情況:我有一個LibGDX遊戲runnig沒有問題作爲桌面項目... 但是,只要我安裝到我的Android設備的應用程序,它只顯示第一屏幕...在這種情況下,它是一個菜單屏幕,顯然不需要太多的資源...紋理不是在兩個權力的決議,但我使用OpenGl2.0。LibGDX And​​roid黑屏在某個屏幕

當我現在將屏幕更改爲實際的遊戲屏幕時,我的設備只是黑屏。這個屏幕包含一個有很多對象的Box2d世界,一個大紋理(6500x877)和一個動畫。我的猜測是,我的處理器(Nvidia Tegra2)的能力存在問題。在查看CPU負載時是否有機會調試遊戲?我不能使用模擬器,因爲這不適用於LibGDX。

+0

難道你試過更小的質感?這個紋理對於我認爲的移動設備來說很重要。是的,你可以在開發設置 – BennX

+0

處激活設備的CPU負載。注意:大多數移動設備的紋理限制大約爲2048x2048,我相信某些GPU可以使用1024x1024。如果您正在使用比這更大的單一紋理,則無法保證它們會加載,而且您根本看不到它們。 – Jyro117

回答

1

使用OpenGL Tracer獲取有關正在發生的更多信息:http://developer.android.com/tools/help/gltracer.html。另外:OpenGL debugging

示蹤工具需要你在最近的Android版本(4.1或更高)

您還可以通過編程在你的代碼中調用Gdx.gl.glGetError()零星運行,看是否有OpenGL命令被觸發錯誤。見When Should One Call glGetError?

您可以查詢最大支持的紋理尺寸的OpenGL運行時與

IntBuffer max = BufferUtils.newIntBuffer(16); // See http://lwjgl.org/forum/index.php?topic=1314.0;wap2 
max.clear(); 
gl.glGetIntegerv(GL10.GL_MAX_TEXTURE_SIZE, max); 
int maxTexDim = max.get(0); 

在你的情況,我懷疑你會得到4096或2048回來......