最近在构思一个程序,用来模拟手机用户. 简单概括如下:
在一段时间T内,在一个矩形区域阿rect内,有n个手机用户在rect中自由运动.且相互影响,比如说,2个用户在要碰撞的时候会试图饶开对方.我查看了相似的代码,一般的做法是,将T分成很多个时间段,比如一个时间段为1秒,然后每过一个时间段,for each n,查看周围有没有影响其运动的其他用户.我一直认为这种写法虽然简单但是还有不少问题,在考虑是否有其他更好的逻辑,请问大家有什么高见,谢谢. 另外,我的程序将用Java编程.

解决方案 »

  1.   

    这个问题就是这么简单呀,每隔一段时间就检查一下。遍历每个手机用户,看有没有影响到周围的手机用户。有什么问题吗?我觉得不会很难,用Javaxie应该很容易。
      

  2.   

    如果rect很大 可以分成很多个小的rect 比如说4个 让每个sprite 保存自己在那个区域的信息 或者让Canvas来保存每个区域的sprite的一个linkedList 这样每次轮询的时候 只用从 4个linkedList里面得到在他们的区域里面的sprite 来检测碰撞就会很好了 一点看法 :) 以前我也是做手机游戏的 呵呵 现在做J2EE有意思