在游戏运行时,调出控制台输入show COLLISION可以显示游戏中的碰撞体。
为网格添加碰撞体:

打开网格,点击选择碰撞选项卡——》选择碰撞体——》点击保存


碰撞预设值(详见文档中的Collision Response Reference)
WorldStatic:应用于不移动的Actor。例如StaticMeshActor
WorldDynamic:适用于在动画或代码影响下移动的Actor类型。例如升降机和门
PhysicsBody:模拟物理移动的Actor。

区块(动词):能够发生碰撞,可根据需要自行设置碰撞响应事件(勾选Simulation Generates Hit Events)
如果有任意一方没有设置为区块,则不会发生碰撞

重叠(overlap):如果没有勾选Generate Overlap Events,效果和忽略差不多
和区块一样,双方都需要勾选Generate Overlap Events,才会触发重叠事件(ReceiveBeginOverlap和ReceiveEndOverlap)
忽视:无论其他物理学实体的碰撞响应如何,这个物理学体都会忽略这种相互作用。
例如有1个PhysicsBody类型的球体,WorldDynamic类型的盒子(墙体)。
1.希望球体和盒子发生碰撞
将球体的碰撞设置的WorldDynamic勾选为区块(即能够与墙体发生碰撞)
将墙体的碰撞设置的PhysicsBody勾选为区块(即能够与球体碰撞)
2.希望球体和盒子发生重叠
球体和盒子都启用Generate Overlap Events
将球体的碰撞设置的WorldDynamic勾选为重叠
将墙体的碰撞设置的PhysicsBody勾选为区块
网友评论