簡體   English   中英

Shaperenderer崩潰libgdx

[英]Shaperenderer crash libgdx

我正在使用libgdx開發一個新應用程序,並且在我的源代碼中使用了shaperenderer類,但是由於我購買了新的平板電腦(Acer Iconia One 10 B3-A20),因此我的應用程序在調用后始終崩潰而沒有顯示任何錯誤“ shaperenderer.end()”方法。 即使當我創建一個簡單的類(如以下類)時,我是否也缺少某些東西?

public class Test implements Screen {
    private ShapeRenderer shapeRenderer = new ShapeRenderer();

    @Override
    public void show() {

    }

    @Override
    public void render(float delta) {
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

        shapeRenderer.begin(ShapeRenderer.ShapeType.Line);
        shapeRenderer.rect(30,30,200,200);
        shapeRenderer.end();

    }

    @Override
    public void resize(int width, int height) {

    }

    @Override
    public void pause() {

    }

    @Override
    public void resume() {

    }

    @Override
    public void hide() {

    }

    @Override
    public void dispose() {
        shapeRenderer.dispose();

    }
}

謝謝

編輯:

在“ shaperenderer.end()”方法中放置一些斷點之后,我注意到程序在調用“ mesh.render()”方法后崩潰,尤其是當它調用Mesh類的“ bind”方法(用於綁定着色器)。

正常嗎

您需要首先在show方法上創建一個攝像機:

OrthographicCamera camera;
[...]
camera = new OrthographicCamera();
camera.setToOrtho(false);

在渲染方法上,在繪制之前設置projectionMatrix:

    camera.update();
    shapeRenderer.setProjectionMatrix(camera.combined);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM