当前位置:网站首页>UE4 碰撞(Collsion)
UE4 碰撞(Collsion)
2022-07-25 09:26:00 【飞起的猪】
简介:在场景中,碰撞是无时无刻都存在的,有些时候我们需要碰撞,有些时候我们不需要碰撞,想要把碰撞关闭,虚幻就提供了碰撞机制。能够很好的解决碰撞问题。
一、查看碰撞
二、删除和添加碰撞
三、碰撞属性介绍
四、碰撞事件和碰撞响应的工作原理
五、自定义碰撞
接下来就开始分析虚幻的碰撞机制:
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/
边栏推荐
- 基础背包问题
- [machine translation] scones -- machine translation with multi tag tasks
- 无线振弦采集仪参数配置工具的设置
- 小程序分享功能
- 【成长必备】我为什么推荐你写博客?愿你多年以后成为你想成为的样子。
- 腾讯云之错误[100007] this env is not enable anonymous login
- Introduction to low power consumption and UPF
- SSM integration (simple library management system to integrate SSM)
- 动态规划,购物单问题
- VScode配置ROS开发环境:修改代码不生效问题原因及解决方法
猜你喜欢

Detailed explanation of MySQL database

CCF 201604-2 Tetris

OC -- Inheritance and polymorphic and pointer

SystemVerilog syntax

TensorFlow raw_ RNN - implement the seq2seq mode to take the output of the previous time as the input of the next time

Mlx90640 infrared thermal imager temperature measurement module development notes (V)

安装 oh my zsh

~2 CCF 2022-03-1 uninitialized warning

Qt 6.2的下载和安装

字典树的使用
随机推荐
CCF 201503-4 network delay
工程监测多通道振弦传感器无线采集仪外接数字传感器过程
Detailed explanation of MySQL database
Debug篇快捷键入门
mysql历史数据补充新数据
[nearly 10000 words dry goods] don't let your resume don't match your talent -- teach you to make the most suitable resume by hand
Leetcode 560 前缀和+哈希表
用ESP32+TM1638实验NTP网络校时闹钟的ARDUINO代码
多数相合问题总结
salt常见问题
I2C也可总线取电!
微信小程序跳转其他小程序
【成长必备】我为什么推荐你写博客?愿你多年以后成为你想成为的样子。
看一个双非二本(0实习)大三学生如何拿到阿里、腾讯的offer
Configuring ROS development environment with vscode: Causes and solutions to the problem of ineffective code modification
Probabilistic robot learning notes Chapter 2
~3 CCF 2022-03-2 travel plan
文件的上传功能
动态规划,购物单问题
TensorFlow raw_ RNN - implement the seq2seq mode to take the output of the previous time as the input of the next time