Choose your operating system:
Windows
macOS
Linux
和其他类型的几何体(如静态网格物体、骨骼网格物体等)一样,Sprite 可定义用于计算与场景中其他几何体碰撞的形态。
碰撞域
Sprite 碰撞域 属性用于定义计算碰撞的方法。存在三种 不同设置:
碰撞类型 |
描述 |
---|---|
无 |
无碰撞几何体生成;只用于装饰性 sprite。 |
使用 2D 物理 |
这是一个 实验性 选项,用于生成在 Box2D 中使用的碰撞几何体。关于限流,请查阅 2D 碰撞 中的详细信息。 |
使用 3D 物理 |
将生成在 PhysX.中使用的碰撞几何体。在 sprite 中定义的 2D 碰撞几何体将被突出,使用垂直轴深处的 碰撞厚度 制作 3D 碰撞几何体。 |
碰撞几何体
碰撞几何体上的 几何体类型 设置指定了用于生成碰撞几何体 的算法类型。下列设置可用:
类型 |
描述 |
---|---|
源边界框式 |
在 Sprite 上使用 源区 |
严格边界框式 |
|
收缩包裹式 |
(实验性 |
自定义式 |
|
方块式 |
分割为许多小方块,包括最终几何体中仅为非空的小方块。 |
"编辑碰撞"模式显示碰撞几何体,且可在视口中进行调整,将模式自动设为自定义式。
工具栏按钮可用于添加额外多边形或捕捉顶点至像素网格。选择一个边沿后按下 Shift+左键单击 组合键可添加新顶点,选中顶点后可按下 删除键 进行删除。
2D 碰撞
Box2D 2.3.1 是一个初始的 实验性 整合版本,进行了多项相关调整,以便在引擎中实现 2D
物理。这并非官方正式支持的原型版本,请谨慎使用,勿用于正式游戏开发。
当前版本仅包括 Win32 和 Win64 的 Box2D 预编译库,因此 2D 碰撞在其他平台上将
无法实现。在 sprite 上选中 2D 域之后将自动进行碰撞检测和响应,而查询
(如点追踪)必须在物理项目设置中单独启用(bEnable2DPhysics 选项)。
整合版支持碰撞检测和响应(包括虚幻碰撞通道/过滤)、刚体
模拟、以及光线投射。非零范围查询、扫描测试和重叠测试等功能尚未加入。如
CharacterMovementComponent 和 MoveComponent with bSweep=true 均基于这些类型的查询,功能仍暂不可用。
长期整合策略的目标是将其打造为一流的引擎,使 2D 场景可直接套用相同的技术和理论知识; 举例而言,只存在一个重叠事件,而并非以 2D 和 3D 形式单独 存在。Box2D 中已加入 3D 光线投射,可进行"面内"追踪(2D 场景中的玩法追踪) 或"垂直面"追踪(如触摸输入追踪,确定物体在手指/鼠标指针下), 产生正常光照效果路径和法线。