我试图在Android上使用opengl es制作一个简单的突破游戏,但我无法确定是否必须对某些游戏逻辑东西使用单独的线程,例如更新游戏和碰撞检测。我已经原型(prototype)化了一个简单的原型(prototype):在彼此的线程中并行绘制和更新彼此。它带来了比我想象的更多的问题,所以我想:



例如,由于突破游戏具有6X5的块状网格,因此需要对每个块进行测试
球会碰到这块砖吗?大约每秒30次。如果将以下代码放在我的主绘图循环中:OnDrawFrame(GL10)恐怕会花费很多渲染时间。
那我可以回到单线程游戏吗? (因为与..pc相比,Android设备没有那么强大。

最佳答案



不,您不需要线程化任何东西。

线程不是用于“简单”任务的。线程用于可以合理预期性能方面的重大问题的任务,例如,通过使用多线程您实际上可以获得一些好处。

通过串入Breakout克隆将获得的好处是编码上的麻烦。而已。它根本不足以要求它,并且如果不需要线程,则几乎永远不要使用它。

09-30 15:01
查看更多