【问题标题】:Which is the more efficient way to position the camera on the sprite? Move the camera along on input or give it the sprite's position on update?将相机定位在精灵上的哪种方法更有效?在输入时移动相机或在更新时给它精灵的位置?
【发布时间】:2016-08-31 19:50:31
【问题描述】:

在 libGDX 中,将相机定位在精灵上哪个更有效? 在移动精灵的输入上移动相机相同的量,或者将相机的位置设置为精灵在更新时的位置?

我真的无法判断输入处理程序是否比常规的 get/set 位置更消耗。

【问题讨论】:

  • 差异是如此微不足道,不值得讨论。
  • 所以你是说只有使用最重的对象(如 spritebatch)才值得讨论?我还在努力学习如何高效地编码内存,所以我真的不知道。
  • 不完全是,我写个答案解释一下。

标签: libgdx


【解决方案1】:

一些琐碎的数学运算只在一个帧中执行一次是不值得考虑的。移动相机跟随精灵只发生一帧一次,所以你应该只关心代码的清晰度。

如果你有一个大对象(比如 SpriteBatch 或一个大数组)要实例化,你要避免在 render 循环中这样做,因为这很慢。你可以在创建东西时实例化它。

关注代码的清晰性而不是过早的优化是一种很好的做法。仅当您确实遇到帧速率问题时才进行优化。如果发生这种情况,则问题通常是在一个大循环中发生的,例如,如果您要循环 200 个敌人来更新它们。

【讨论】:

  • 再次感谢您,您帮了大忙!尽管我是通过简单的游戏教程来学习这个框架,但我不会一点一点地学习它,我当然会关注代码的清晰度。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-14
  • 2023-03-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多