[英]Sprite not displaying unless android app pauses - LibGDX
這是代碼: http : //hastebin.com/ugufakeyap.java
當我運行此命令時,屏幕上未顯示精靈“ aspectRatios”。 但是,當我按下主屏幕按鈕暫停程序,然后繼續執行程序時,它將在屏幕上顯示精靈。 為什么是這樣? 真煩人。
您需要調用camera.update();
換位置后。 我最好的猜測是libGDX在恢復時會自動更新相機。
public void create () {
batch = new SpriteBatch();
txt = new Texture(Gdx.files.internal("test2.png"));
aspectRatios = new Sprite(txt);
aspectRatios.setPosition(0,0);
//aspectRatios.setSize(100,100);
camera = new OrthographicCamera();
viewport = new StretchViewport(1080,1920,camera);
camera.position.set(camera.viewportWidth/2,camera.viewportHeight/2,0);
camera.update();
viewport.apply();
//batch.setProjectionMatrix(camera.combined);
Gdx.input.setInputProcessor(this);
}
通常,您也可以在那里更新批處理投影矩陣,但是無論如何,您都要在render方法的每一幀中進行更新。
有人在libGDX irc頻道上幫助了我。 原來我沒打電話
viewport.update(width, height, centerCamera);
(感謝Xoppa )
並且(根據ASneakyFox ):“您必須假設android設備不會達到您想要的大小,它會在應用打開或更改方向時調用resize,因此您可以將布局修改為屏幕尺寸(即更改視口)”
這是代碼的更新版本: http : //hastebin.com/olivopocix.java
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.