【问题标题】:I am using a lot of variables to count time in my game ,is it ok?我在游戏中使用了很多变量来计算时间,可以吗?
【发布时间】:2016-10-19 09:24:31
【问题描述】:

在我的游戏中,我的游戏中发生的每一件事都有计时器变量,例如用于计算秒数的计时器,直到我创建一个敌人并部署它以及让任何敌人射击的计时器......我的意思是我正在使用很多 long 类型的变量。

long timeToEnemyShoot = System.nanoTime();
while (true){
     update();
}

public void update(){
if( System.nanoTime() - timeToEnemyShoot) / 1000000 >= 1000 ){
     enemy.shoot();
}

想象一下有超过 15 个这样的变量! 我认为这不是管理时间的好方法。 那么还有其他有效的方法吗?

【问题讨论】:

  • 你需要你所需要的... ;o) 更好的问题是:他们在正确的地方吗?但我们需要查看您的代码(或至少一个示例)来说明这一点。
  • 问问自己是否有可能在没有数据的情况下实现结果,即使用其他来源的数据。如果答案是否定的,那么您需要保留它。从其他值导出值的时间复杂度可能超过存储它的空间复杂度。
  • 没有代码我们不能告诉你它是否可以:)

标签: java android game-physics mobile-development


【解决方案1】:

我认为总体上还可以。也许使用某种里程碑式的长变量并指定确切的时间,您将使用里程碑+更少的内存消耗变量。风险是复杂性 => 错误、更高的计算要求。

【讨论】:

    【解决方案2】:

    声明变量时,变量会发生memory allocation

    从长远来看,您可以确保为您省去很多痛苦的事情是创建变量private。 在某些情况下,访问类型会影响性能。

    我希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-20
      • 2019-02-03
      • 1970-01-01
      相关资源
      最近更新 更多