【问题标题】:Java: Why can't I properly render colours (RGBA) with LibGdx?Java:为什么我不能用 LibGdx 正确渲染颜色 (RGBA)?
【发布时间】:2018-12-18 08:09:58
【问题描述】:

当我将颜色更改为蓝色 Gdx.glClearColor(0,0,255,1) 时,它会正常工作。但是当我使用Gdx.glClearColor(51,204,255,1)时,颜色仍然是白色。我必须进行哪些更改才能使其正常工作?

@Override
public void render(float delta) {

    Gdx.gl.glClearColor(51,204,255,1); // this makes the screen white
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

    camera.update();
    game.batch.setProjectionMatrix(camera.combined);

    game.batch.begin();
    game.batch.draw(game.hermine, 0, 0, (int)(game.hermine.getWidth() * 0.25), (int)(game.hermine.getHeight() * 0.25));
    game.batch.end();

    if (Gdx.input.isTouched()) {
        game.setScreen(new GameScreen(game));
        dispose();
    }
}

【问题讨论】:

    标签: java android colors libgdx


    【解决方案1】:

    glClearColor() 函数的工作范围是 0 - 1。

    所以glClearColor(1, 1, 1, 1); 是白色,glClearColor(0, 0, 0, 1); 是黑色。

    glClearColor(0, 0, 255, 1); 有效,因为它与glClearColor(0, 0, 1, 1); 相同

    glClearColor(51, 204, 255, 1); 不起作用,因为它与glClearColor(1, 1, 1, 1); 相同,而且是白色的。

    您必须在 0 到 1 的范围内工作,以便成为您的预期结果,您必须编写:Gdx.gl.glClearColor(0.2f, 0.8f, 1, 1);

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-05
      • 1970-01-01
      • 2021-08-06
      • 2022-06-15
      • 2014-01-23
      • 2020-07-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多