简介:在场景中,碰撞是无时无刻都存在的,有些时候我们需要碰撞,有些时候我们不需要碰撞,想要把碰撞关闭,虚幻就提供了碰撞机制。能够很好的解决碰撞问题。
一、查看碰撞
二、删除和添加碰撞
三、碰撞属性介绍
四、碰撞事件和碰撞响应的工作原理
五、自定义碰撞
接下来就开始分析虚幻的碰撞机制:
1.查看碰撞:点开模型点开collsion

2.删除和添加碰撞

一般不推荐使用自动生成碰撞(不太是我们想要的碰撞)

3.碰撞属性介绍

4.碰撞事件
在了解碰撞事件之前,我们需要了解阻挡和重叠的含义。
阻挡:是指两个含有碰撞的物体只要接触就是阻挡,但是,需要启用 模拟生成命中事件(Simulation Generates Hit Events) 才能执行 事件命中,该功能在蓝图、可破坏物Actor、触发器等处使用。
重叠:两个含有碰撞的物体重叠到了一起,会发生重叠事件。
那么如何设置Hit事件和Overlap事件
参考案列:

Hit事件:

一参数设置如下


Overlap事件:

如果禁用了 生成重叠事件(Generate Overlap Events),则不管目的为何,重叠 和 忽略 的效果完全相同。在此情况下,球体设置为重叠或忽略箱体:确保Generate Overlap Events处于开启状态。两个碰撞物体只要有一个是重叠就会生成重叠事件(Generate Overlap Events)。


5.碰撞响应

碰撞预设值:
| 默认(Default) | 使用已在静态网格体编辑器中应用给静态网格体的设置。 |
| 自定义...(Custom...) | 为此实例设置所有自定义碰撞设置。 |
| NoCollision | 无碰撞。 |
| BlockAll | 在默认情况下阻挡所有Actor的WorldStatic对象。所有新自定义信道都将使用其本身的默认响应。 |
| OverlapAll | 在默认情况下与所有Actor重叠的WorldStatic对象。所有新自定义信道都将使用其本身的默认响应。 |
| BlockAllDynamic | 在默认情况下阻挡所有Actor的WorldDynamic对象。所有新自定义信道都将使用其本身的默认响应。 |
| OverlapAllDynamic | 在默认情况下与所有Actor重叠的WorldDynamic对象。所有新自定义信道都将使用其本身的默认响应。 |
| IngoreOnlyPawn | 忽略Pawn和载具的WorldDynamic对象。所有其他信道都将设置为默认值。 |
| OverlapOnlyPawn | 与Pawn、摄像机和载具重叠的WorldDynamic对象。所有其他信道都将设置为默认值。 |
| Pawn | Pawn对象。可用于任意可操作角色或AI的胶囊体。 |
| Spectator | 忽略除WorldStatic以外的所有其他Actor的Pawn对象。 |
| CharacterMesh | 用于角色网格体的Pawn对象。所有其他信道都将设置为默认值。 |
| PhysicsActor | 模拟Actor。 |
| Destructible | 可破坏物Actor。 |
| InvisibleWall | 不可见的WorldStatic对象。 |
| InvisibleWallDynamic | 不可见的WorldDynamic对象。 |
| Trigger | 用于触发器的WorldDynamic对象。所有其他信道都将设置为默认值。 |
| Ragdoll | 模拟骨架网格体组件。所有其他信道都将设置为默认值。 |
| Vehicle | 阻挡载具(Vehicle)、WorldStatic和WorldDynamic的载具对象。所有其他信道都将设置为默认值。 |
碰撞启用:
| 属性 | 说明 |
|---|---|
| 无碰撞(No Collision) | 在物理引擎中此形体将不具有任何表示。不可用于空间查询(光线投射、Sweep、重叠)或模拟(刚体、约束)。此设置可提供最佳性能,尤其是对于移动对象。 |
| 仅查询(Query Only) | 此形体仅可用于空间查询(光线投射、Sweep和重叠)。不可用于模拟(刚体、约束)。对于角色运动和不需要物理模拟的对象,此设置非常有用。通过缩小物理模拟树中的数据来实现一些性能提升。 |
| 仅物理(Physics Only) | 此形体仅可用于物理模拟(刚体、约束)。不可用于空间查询(光线投射、Sweep、重叠)。对于角色上不需要按骨骼进行检测的模拟次级运动,此设置非常有用。通过缩小查询树中的数据来实现一些性能提升。 |
| 启用碰撞(Collision Enabled) | 此形体可用于空间查询(光线投射、Sweep、重叠)和模拟(刚体、约束)。 |
碰撞类型:
| 属性 | 说明 |
|---|---|
| WorldStatic | 应用于不移动的任意Actor。静态网格体Actor是类型可能为"WorldStatic"的Actor的良好示例。 |
| WorldDynamic | WorldDynamic用于受到动画或代码的影响而移动的Actor类型;运动学。电梯和门是WorldDynamic Actor的典型例子。 |
| Pawn | 任何由玩家控制的实体的类型都应为Pawn。玩家角色是"对象类型(Object Type)"应为"Pawn"的Actor的典型例子。 |
| PhysicsBody | 由于物理模拟而移动的任意Actor。 |
| 载具(Vehicle) | 此为载具的默认类型。 |
| 可破坏物(Destructible) | 此为可破坏物网格体的默认类型。 |
碰撞响应:
追踪响应用于追踪(光线投射),例如蓝图节点 按信道进行线迹追踪(Line Trace by Channel)。
| 属性 | 说明 |
|---|---|
| 可视性(Visibility) | 泛型可视性测试信道。 |
| 摄像机(Camera) | 通常用于从摄像机到某个对象的追踪。 |
对象响应:
| 属性 | 说明 |
|---|---|
| WorldStatic | 当与WorldStatic物理形体对象类型交互时,此物理形体应如何做出反应。 |
| WorldDynamic | 当与WorldDynamic物理形体对象类型交互时,此物理形体应如何做出反应。 |
| Pawn | 当与Pawn物理形体对象类型交互时,此物理形体应如何做出反应。 |
| PhysicsBody | 当与PhysicsBody物理形体对象类型交互时,此物理形体应如何做出反应。 |
| 载具(Vehicle) | 当与"载具(Vehicle)"物理形体对象类型交互时,此物理形体应如何做出反应。 |
| 可破坏物(Destructible) | 当与"可破坏物(Destructible)"物理形体对象类型交互时,此物理形体应如何做出反应。 |
6.自定义碰撞类型
打开项目设置->Collsion->添加检测

总结:碰撞需要根据实际情况来选择,不同的场景选择不通的碰撞。
参考资料:虚幻官方https://docs.unrealengine.com/5.0/zh-CN/collision-response-reference-in-unreal-engine/
最后
以上就是寂寞星月最近收集整理的关于UE4 碰撞(Collsion)简介:在场景中,碰撞是无时无刻都存在的,有些时候我们需要碰撞,有些时候我们不需要碰撞,想要把碰撞关闭,虚幻就提供了碰撞机制。能够很好的解决碰撞问题。的全部内容,更多相关UE4内容请搜索靠谱客的其他文章。
发表评论 取消回复