1
我正在用桌面/ android構建一個libgdx的小遊戲。一切工作正常,如果在桌面上運行,但它在android上有一個奇怪的問題。在Android的libgdx網格渲染不啓動
當我從菜單畫面切換到遊戲畫面時,我可以聽到遊戲畫面的配樂,但畫面不變。如果我點擊屏幕,我會聽到遊戲的聲音,但圖片保持不變(菜單屏幕)。最重要的是,這不會每次都發生 - 有些時候屏幕變化是正確的,如果它確實能夠正常運行,並且不會減速......
呈現代碼如下,我發現問題消失,如果我得到擺脫網渲染:
Gdx.gl.glClearColor(1, 1, 1, 1);
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
camera.update();
game.batch.setProjectionMatrix(camera.combined);
game.batch.begin();
game.batch.draw(UI.LevelScreenSkin.getRegion("LevelBackGround"), UI.BG_TEXTURE_OFFSET_X, UI.BG_TEXTURE_OFFSET_Y, UI.BG_TEXTURE_WIDTH, UI.BG_TEXTURE_HEIGHT);
game.batch.end();
MainStage.act();
MainStage.draw();
//get updated mesh data from blocks
updateGlobalMeshData(false);
setGlobalMeshData();
//enable blending
Gdx.gl.glEnable(GL10.GL_BLEND);
//render blocks
globalMesh.render(GL10.GL_TRIANGLES, 0, ThisLevel.globalMesh.getMaxIndices());
//render blocks' borders
//enable texture binding
Gdx.graphics.getGL10().glEnable(GL10.GL_TEXTURE_2D);
//render borders
borderTexture.bind();
globalBorderMesh.render(GL10.GL_TRIANGLES, 0, globalBorderMesh.getMaxIndices());
//disable texture binding and blending
Gdx.graphics.getGL10().glDisable(GL10.GL_TEXTURE_2D);
Gdx.gl.glDisable(GL10.GL_BLEND);
二目有大約2000個頂點,所以首先我想也許我的設備無法處理這些,但在這些情況下,當遊戲開始時,一切都正常運行和渲染不用任何進展緩慢。