我对纹理有点麻烦。我正在编写一个处理来自二进制文件的原始数据的程序,执行一些FFT(使用JTransform),将数据缩放到单个带符号的字节,然后显示它。除了显示器外,一切都很顺利。
内存中的数据是512 x 500 byte[]
,应该在512 x 500纹理上呈现。使用LIBGDX,我执行以下操作:
Actor
Texture
Sprite
Texture
在演员' draw方法,我使用以下代码:
@Override
public void draw(Batch batch, float parentAlpha) {
super.draw(batch, parentAlpha);
Gdx.gl.glTexImage2D(GL20.GL_TEXTURE_2D, 0, GL20.GL_LUMINANCE, 500, 512, 0, GL20.GL_LUMINANCE, GL20.GL_BYTE, data); //Data is a byte[]
}
问题:屏幕只显示一小部分数据。看来Texture
实际上已放大并且仅显示大约20 x 20像素
我尝试过的事情并没有奏效:
Stage
相机以查看它是否是相机剪裁问题Sprite
以查看它是否是相机剪裁问题glViewport
查看是否是相机剪裁问题没有任何效果,帮助!