线段碰撞器
SegmentCollider 定义两点之间的线段。适用于薄墙、单向平台和不需要体积形状的隐形屏障。
属性
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
point1 | Vec2 | {x: -0.5, y: 0} | 起点,以物理单位计(局部空间) |
point2 | Vec2 | {x: 0.5, y: 0} | 终点,以物理单位计(局部空间) |
density | number | 1.0 | 质量密度 |
friction | number | 0.3 | 表面摩擦力 |
restitution | number | 0.0 | 弹性 |
isSensor | boolean | false | 触发区域,无物理响应 |
enabled | boolean | true | 启用/禁用碰撞体 |
categoryBits | number | 1 | 碰撞过滤类别位 |
maskBits | number | 0xFFFF | 碰撞过滤掩码位 |
用法
将 SegmentCollider 组件添加到同时具有 RigidBody 和 Transform 的实体上。
**薄墙:**创建无需完整盒形的隐形碰撞边界。
commands.spawn() .insert(Transform) .insert(RigidBody, { bodyType: 0 }) .insert(SegmentCollider, { point1: { x: 0, y: 0 }, point2: { x: 0, y: 5 }, });**单向平台:**搭配静态刚体创建物体可以落在上面的边缘。
**隐形屏障:**定义游戏区域边界,无需可见碰撞体几何形状。