教程:使用事件表给tilemap添加碰撞区
-
1、逻辑说明
在场景开始时,遍历地图格子,当地图格子为某编号时,在格子处生成一个透明碰撞体。之后对碰撞体优化,减少碰撞体数量。
2、事件操作
其中,64为我的地图格子大小,-1为空白格子的编号,整段就是比较每个位置,当图块不等于空白时,添加碰撞体。碰撞体需要添加刚体属性。
3、优化
在上一步生成碰撞体后,大型地图会的对象数量会多得离谱,因此要优化碰撞体数量。再给碰撞体添加保持状态能力,在生成碰撞体前判断,如果场景已经存在一定数量碰撞体,就不在运行生成的事件。优化数量的动作组如下:
4、效果展示
如下图
-
忘了写了,要给碰撞体建一个同类组,就是动作组中的"同_地图碰撞体“,不然不能对同样的对象进行比较删除操作