Я делаю игру, и недавно я принес спрайт с размерами 576 × 528. Я не могу показать это или опубликовать здесь, к сожалению, потому что это не общественное достояние или что-то еще из того, что является законным дураком.Но я хочу взять все крошечные изображения внутри изображения размером 16x16 на каждом изображении.Код компилируется без ошибок, это не моя проблема.Моя главная проблема заключается в том, что когда я перебираю массив «Sprites» и беру каждый BufferedImage, хранящийся в каждом объекте Tile, и записываю его в папку, я получаю только половину изображений.Я пошел в дальнейшую отладку и обнаружил, что некоторые плитки в массиве являются нулевыми, и поэтому они не записываются, но я не могу понять, почему.
public class Sprites {
public SpriteSheet(String path) {
int cellSize = 16;
BufferedImage fullSheet = GameUtils.getImg(path);
sprites = new Tile[(fullSheet.getHeight()/cellSize)*(fullSheet.getWidth()/cellSize)];
System.out.println(fullSheet.getWidth());
int r,c;
BufferedImage img;
for(r = 0; r < 33; r++)
for(c = 0; c < 36; c++) {
img = org.getSubimage(c*cellSize,r*cellSize,cellSize,cellSize);
sprites[r*cellSize+c] = new Tile(img);
}
}