标题不是很清楚,但我不知道如何制定它。因此,请随意建议一个新标题。
我目前正在使用 Slick2D 库用 Java 制作游戏。首先,我在render()
主类的函数中处理所有渲染。但即使只有几个对象,我发现这变得非常混乱。
简短的示例,尽管原始代码需要渲染更多内容:
g.setBackground(Color.darkGray);
g.setColor(Color.black);
g.fillRect(0, 0, gc.getScreenWidth(), 128); //draw top UI
g.fillRect(0, 128, gc.getScreenWidth(), 512, sky, 8, 512); //draw background
g.fillRect(0, 720 - 128, gc.getScreenWidth(), 128, ground, 128, 128); //draw ground
g.drawImage(charSprite, charX, charY); //draw character
g.drawImage(weaponSprite, weaponX, weaponY); //draw weapon
for (firedArrows arrow : Arrow) {
g.drawImage(arrowSprite, arrow.getPosX(), arrow.getPosY) //draw all arrows
}
所以,我现在切换到让每个对象自己渲染。在主render()
函数中,我将调用 的render()
方法,该方法level
依次渲染关卡并调用关卡render()
中对象的函数。
Main.render() => level.render() => 渲染级别
=> character.render() => render character => weapon.render() => render weapon => monsters.render() => render monsters
等等等等。
这两种方法中的哪一种更受欢迎,为什么?或者是否有第三种方法是首选?