android渲染纹理区域显示黑色帧[Java Libgdx]
在android中渲染纹理区域时,与获取图像(我在桌面中获取)相反,我只获取黑盒而不是图像。我有一种感觉,这将与不寻常的4495*260px大小的图像有关。 以下是纹理区域的代码:android渲染纹理区域显示黑色帧[Java Libgdx],java,android,opengl-es,libgdx,Java,Android,Opengl Es,Libgdx,在android中渲染纹理区域时,与获取图像(我在桌面中获取)相反,我只获取黑盒而不是图像。我有一种感觉,这将与不寻常的4495*260px大小的图像有关。 以下是纹理区域的代码: walkSheet = new Texture(Gdx.files.internal("data/spritesheet5.png")); upFarmer1 = new Sprite (walkSheet, 0, 0, 145, 130); upFarmer2
walkSheet = new Texture(Gdx.files.internal("data/spritesheet5.png"));
upFarmer1 = new Sprite (walkSheet, 0, 0, 145, 130);
upFarmer2 = new Sprite (walkSheet, 170, 0, 170, 170);
upFarmer3 = new Sprite (walkSheet, 340, 0, 170, 170);
upFarmer4 = new Sprite (walkSheet, 680, 0, 170, 170);
upFarmer5 = new Sprite (walkSheet, 0, 170, 170, 170);
upFarmer6 = new Sprite (walkSheet, 170, 170, 170, 170);
upFarmer7= new Sprite (walkSheet, 340, 170, 170, 170);
upFarmer8= new Sprite (walkSheet, 680, 170, 170, 170);
TextureRegion[][] tmp = TextureRegion.split(walkSheet, walkSheet.getWidth()/FRAME_COLS, walkSheet.getHeight()/FRAME_ROWS); // #10
walkFrames = new TextureRegion[FRAME_COLS * FRAME_ROWS];
int index = 0;
for (int i = 0; i < FRAME_ROWS; i++) {
for (int j = 0; j < FRAME_COLS; j++) {
walkFrames[index++] = tmp[i][j];
}
}
// walkAnimation = new Animation(0.225f, walkFrames); // #11
walkAnimation = new Animation(1/90f, walkFrames); // #11
spriteBatch = new SpriteBatch(); // #12
stateTime = 0f;
}
walkSheet=new纹理(Gdx.files.internal(“data/spritesheet5.png”);
upFarmer1=新精灵(walkSheet,0,0,145,130);
upFarmer2=新精灵(walkSheet,170,0,170,170);
upFarmer3=新精灵(walkSheet,340,0,170,170);
upFarmer4=新精灵(walkSheet,680,0170170);
upFarmer5=新精灵(walkSheet,0,170,170,170);
upFarmer6=新精灵(walkSheet,170170170170);
upFarmer7=新精灵(walkSheet,340、170、170、170);
upFarmer8=新精灵(walkSheet,680170170170);
TextureRegion[][]tmp=TextureRegion.split(walkSheet,walkSheet.getWidth()/FRAME\u COLS,walkSheet.getHeight()/FRAME\u ROWS);//#10
walkFrames=新纹理区域[FRAME_COLS*FRAME_ROWS];
int指数=0;
对于(int i=0;i
我一直在使用libgdx,我相信它使用的是GL20或GL10,但我对这方面的经验很少,如果是问题,请告诉我解决应用程序中问题的位置。并非所有Android设备都支持大于2048的大小。请注意上面的@Tenfour04,但也许你可以尝试在API级别11+中使用android:largeHeap=“true”,我从来没有使用过libgdx,但也许有帮助,看看这个问题(尽管名称不同,它也适用于android,而不仅仅是桌面)