在LWJGL / LibGDX中将单字节加载到纹理

时间:2014-06-18 19:59:04

标签: libgdx lwjgl

我在LibGDX中有一个亮度图。我使用ByteBuffer加载我的像素,效果很好。

    Gdx.graphics.getGL20().glPixelStorei(GL20.GL_UNPACK_ALIGNMENT, 1);
    Gdx.graphics.getGL20().glTexImage2D(GL20.GL_TEXTURE_2D, 0, GL20.GL_LUMINANCE, overviewBlock.getWidth(), overviewBlock.getHeight(), 0,
            GL20.GL_LUMINANCE,
            GL20.GL_UNSIGNED_BYTE, overviewBuffer);

但是,我无法理解字节如何转换为GLSL中的浮点数。对于基于整数的颜色,写入ByteBuffer就像魅力一样。但我不知道如何用单字节颜色来做这件事。

                    buffer.put((byte)255);

如果我没弄错的话,这不会导致GLSL / OpenGL中的1.0值。获取GLSL中0到1.0之间的值的正确方法是什么,比如说整数范围为0 - 255?

1 个答案:

答案 0 :(得分:0)

我正在使用buffer.write((byte)(整数& 0xff))按照评论的建议编写我的字节。