有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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) 个答案