跳转到内容

线段碰撞器

SegmentCollider 定义两点之间的线段。适用于薄墙、单向平台和不需要体积形状的隐形屏障。

属性

属性类型默认值说明
point1Vec2{x: -0.5, y: 0}起点,以物理单位计(局部空间)
point2Vec2{x: 0.5, y: 0}终点,以物理单位计(局部空间)
densitynumber1.0质量密度
frictionnumber0.3表面摩擦力
restitutionnumber0.0弹性
isSensorbooleanfalse触发区域,无物理响应
enabledbooleantrue启用/禁用碰撞体
categoryBitsnumber1碰撞过滤类别位
maskBitsnumber0xFFFF碰撞过滤掩码位

用法

SegmentCollider 组件添加到同时具有 RigidBodyTransform 的实体上。

**薄墙:**创建无需完整盒形的隐形碰撞边界。

commands.spawn()
.insert(Transform)
.insert(RigidBody, { bodyType: 0 })
.insert(SegmentCollider, {
point1: { x: 0, y: 0 },
point2: { x: 0, y: 5 },
});

**单向平台:**搭配静态刚体创建物体可以落在上面的边缘。

**隐形屏障:**定义游戏区域边界,无需可见碰撞体几何形状。

参见