java是一种更高效的瓷砖渲染方法
我搜索过类似的线索,但没有找到。 我想知道是否有一种更有效的方式来渲染瓷砖,它只使用一个图像,并在网格中绘制相同的图像来覆盖一个区域
我使用的代码如下:
public void render(Graphics g) {
for(int r = 0; r <= tilePieces.length; r++) {
for(int c = 0; c <= tilePieces[0].length; c++) {
try {
tilePieces[r][c].render(g);
}
catch(Exception e) {
}
}
}
}
当我创建一个瓷砖时,我也会创建它所需要的瓷砖块(正方形),并将它们存储在一个数组中。 每次调用对象的render()方法时,它都会在数组中循环并调用它们的render()方法,从而绘制图像。 游戏中没有延迟,但我发现这种方法效率低下,因为我必须为一个瓷砖创建一组对象,并调用它们的渲染方法。 这就是为什么,我尝试在上面的方法中绘制相同的一幅图像,而不是调用每个瓷砖的render()方法,这导致游戏以每5秒1帧的速度运行。奇怪的是,调用方法来绘制图像和直接在循环中绘制图像有什么区别
共 (0) 个答案