【问题标题】:Delegating drawing from Renderer to game objects将绘图从渲染器委托给游戏对象
【发布时间】:2015-12-12 22:17:03
【问题描述】:

目前我正在编写关于 libGDX 框架的小游戏。我有GameRenderer 类,它有render() 函数,它在游戏中绘制所有 对象。为此,我需要在所有游戏对象类中实现许多 getter 方法。这很乏味,我不确定我是否做对了所有事情。

所以,问题是:在游戏对象类中实现draw() 方法然后从GameRendererrender() 方法调用它们是正常的做法吗? (我很困惑,它们是物理对象,与绘图无关)

附:我不使用任何场景/演员。

【问题讨论】:

  • 您是否有理由不使用Scene2d 框架(使用StagesActors)?看起来你可以从使用它中受益匪浅。 Stage 可以充当您的GameRenderer,而您的GameObjects 将是Actors

标签: java libgdx drawing


【解决方案1】:

我一直都是这样玩的。对于像 Player、Enemies 这样特殊的对象,我为它们创建了一个新的单独类,并在每个类中添加了一个绘制/渲染方法。然后我从游戏的主渲染循环中调用它们。到目前为止工作得很好。 对于多个对象,您也可以轻松地迭代数组。喜欢:

for(Enemy e:enemyPool)
    e.draw(batch)

【讨论】:

    猜你喜欢
    • 2010-11-04
    • 1970-01-01
    • 1970-01-01
    • 2014-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-08
    相关资源
    最近更新 更多