1,使用一个二维数组来表示游戏的静态元素,形如:
其中0表示空气,1表示泥土
这样玩家移动时碰撞检测,则只需要获取自己在二维数组中的位置,在判断该位置四周几个格子是否存在实体元素,并进行碰撞检测就行了,这样大大简化了碰撞检测的次数。
但如果存在动态元素我又该怎么判断呢?遍历所有动态元素并一一进行碰撞检测?这样对性能影响太大了,看起来也很蠢。实际游戏中的碰撞检测到底是怎样实现的?
1,使用一个二维数组来表示游戏的静态元素,形如:
其中0表示空气,1表示泥土
这样玩家移动时碰撞检测,则只需要获取自己在二维数组中的位置,在判断该位置四周几个格子是否存在实体元素,并进行碰撞检测就行了,这样大大简化了碰撞检测的次数。
但如果存在动态元素我又该怎么判断呢?遍历所有动态元素并一一进行碰撞检测?这样对性能影响太大了,看起来也很蠢。实际游戏中的碰撞检测到底是怎样实现的?