因此,您正在使用以下表达式计算数组索引:
xSheet + ySheet * sheet.width + tileOffset
您需要确保该值在数组的范围内
sheet.pixels。为此,您可以编写一个小的方法来固定索引:
public int clamp(int index, int start, int end) { return index > end ? end : index < 0 ? 0 : index;}并像这样使用它:
int i = clamp((xSheet+ySheet*sheet.width+tileOffset), 0, sheet.pixels.length-1) sheet.pixels[i];
这样,您将确保索引在[0,sheet.pixels.length-1]范围内,但是仍然需要知道这对于您的用例是否有意义。



