跳转到内容

物理组件

下面每个字段都由引擎自身的组件注册表推导而来——就是编辑器 Details 面板读的那一份—— 所以这里的类型和默认值就是你添加组件时真正拿到的值,且不可能与代码脱节。讲怎么用的正文在 每条目所链接的指南里。字段说明取自 C++ ES_PROPERTY 处的原文,因此为英文。

BoxCollider

A rectangular collision shape. Sizes are in **metres**, not pixels.

Explained in gameplay/physics.

FieldTypeDefaultNotes
halfExtentsVec2(0.5, 0.5)
offsetVec2(0, 0)
radiusnumber0.05
densitynumber1
frictionnumber0.3
restitutionnumber0
isSensorbooleanfalse
enabledbooleantrue
categoryBitsnumber1
maskBitsnumber65535

BoxCollider3D

A box collision shape in 3D. Half-extents are in world units.

Explained in gameplay/physics-3d.

FieldTypeDefaultNotes
halfExtentsVec3(0.5, 0.5, 0.5)
frictionnumber0.3 Range ≥ 0.
restitutionnumber0 Range 0–1.
isSensorbooleanfalse
enabledbooleantrue

CapsuleCollider

A capsule collision shape — the usual choice for a character body.

Explained in gameplay/physics.

FieldTypeDefaultNotes
radiusnumber0.25
halfHeightnumber0.5
offsetVec2(0, 0)
densitynumber1
frictionnumber0.3
restitutionnumber0
isSensorbooleanfalse
enabledbooleantrue
categoryBitsnumber1
maskBitsnumber65535

CapsuleCollider3D

An upright capsule — what a 3D character is. Total height is 2*(halfHeight + radius).

Explained in gameplay/physics-3d.

FieldTypeDefaultNotes
radiusnumber0.3 Range ≥ 0.
halfHeightnumber0.5 Range ≥ 0.
frictionnumber0.3 Range ≥ 0.
restitutionnumber0 Range 0–1.
isSensorbooleanfalse
enabledbooleantrue

ChainCollider

A polyline of edges — open or looped — for static terrain.

Explained in gameplay/physics.

FieldTypeDefaultNotes
pointsVec2[][{"x":-1,"y":0},{"x":0,"y":0.5},{"x":1,"y":0},{"x":0,"y":-0.5}]
isLoopbooleantrue
frictionnumber0.6
restitutionnumber0
categoryBitsnumber1
maskBitsnumber65535
enabledbooleantrue

CharacterController

Kinematic character movement that slides along walls, climbs slopes and reports ground contact.

Explained in gameplay/physics.

FieldTypeDefaultNotes
velocityVec2(0, 0)
upVec2(0, 1)
floorMaxAnglenumber0.7854Max walkable slope from up (radians) Range 0–1.5708, step 0.01.
maxSlidesnumber4 Range 1–8, step 1.
skinWidthnumber1 Range ≥ 0, step 0.25.
snapLengthnumber0Floor-snap probe length; 0 disables stair/slope stick Range ≥ 0, step 0.5.
slideOnCeilingbooleantrue
maskBitsnumber65535
isOnFloorbooleanfalse
isOnWallbooleanfalse
isOnCeilingbooleanfalse
floorNormalVec2(0, 0)
realVelocityVec2(0, 0)

CharacterController3D

A kinematic 3D mover: swept against the world, climbs steps, stays glued to slopes, and reports the ground it is on.

Explained in gameplay/physics-3d.

FieldTypeDefaultNotes
velocityVec3(0, 0, 0)
radiusnumber0.3 Range ≥ 0.
halfHeightnumber0.5 Range ≥ 0.
maxSlopenumber0.87Steepest ground it can stand on Range 0–1.5708, step 0.01.
layernumber0 Range 0–15, step 1.
stepHeightnumber0.4 Range ≥ 0, step 0.05.
snapDownnumber0.5 Range ≥ 0, step 0.05.
massnumber70 Range ≥ 0.
pushForcenumber5000How hard it can shove what it walks into Range ≥ 0.
enabledbooleantrue
isOnFloorbooleanfalse
floorNormalVec3(0, 0, 0)
realVelocityVec3(0, 0, 0)

CircleCollider

A circular collision shape. Radius is in **metres**.

Explained in gameplay/physics.

FieldTypeDefaultNotes
radiusnumber0.5
offsetVec2(0, 0)
densitynumber1
frictionnumber0.3
restitutionnumber0
isSensorbooleanfalse
enabledbooleantrue
categoryBitsnumber1
maskBitsnumber65535

ConvexCollider3D

Collides against the convex hull of an imported mesh — the shape a solver can push, unlike a mesh collider.

Explained in gameplay/physics-3d.

FieldTypeDefaultNotes
meshAsset<mesh>noneGeometry (.esmesh) whose convex hull collides.
frictionnumber0.3 Range ≥ 0.
restitutionnumber0 Range 0–1.
isSensorbooleanfalse
enabledbooleantrue

DistanceJoint

Holds two bodies a fixed (or spring-limited) distance apart.

Explained in gameplay/physics.

FieldTypeDefaultNotes
connectedEntityEntity-1
anchorAVec2(0, 0)
anchorBVec2(0, 0)
lengthnumber1
enableSpringbooleanfalse
hertznumber1
dampingRationumber0.5
enableLimitbooleanfalse
minLengthnumber0.5
maxLengthnumber2
enableMotorbooleanfalse
maxMotorForcenumber0
motorSpeednumber0
collideConnectedbooleanfalse
enabledbooleantrue

DistanceJoint3D

Keeps two 3D bodies a distance apart: a rope, a rod, or a spring when a frequency is given.

Explained in gameplay/physics-3d.

FieldTypeDefaultNotes
connectedEntityEntity-1
anchorVec3(0, 0, 0)
connectedAnchorVec3(0, 0, 0)
minLengthnumber0
maxLengthnumber100
frequencynumber0
dampingnumber0.5
collideConnectedbooleanfalse
enabledbooleantrue

FixedJoint3D

Locks two 3D bodies together in the pose they were placed in — no freedom at all.

Explained in gameplay/physics-3d.

FieldTypeDefaultNotes
connectedEntityEntity-1
collideConnectedbooleanfalse
enabledbooleantrue

HingeJoint3D

One axis of rotation between two 3D bodies — a door or a driven wheel, with optional limits and a motor.

Explained in gameplay/physics-3d.

FieldTypeDefaultNotes
connectedEntityEntity-1
anchorVec3(0, 0, 0)
axisVec3(0, 1, 0)
enableLimitbooleanfalse
lowerAnglenumber-1.5708
upperAnglenumber1.5708
enableMotorbooleanfalse
motorSpeednumber0
maxMotorTorquenumber0
collideConnectedbooleanfalse
enabledbooleantrue
anglenumber0

MeshCollider3D

Collides against an imported mesh’s own triangles — terrain, stairs, a room. Always static, and one-sided.

Explained in gameplay/physics-3d.

FieldTypeDefaultNotes
meshAsset<mesh>noneGeometry (.esmesh) to collide against.
layernumber0 Range 0–15.
frictionnumber0.3 Range ≥ 0.
restitutionnumber0 Range 0–1.
enabledbooleantrue

MotorJoint

Drives one body toward a target offset and angle — moving platforms and conveyors.

Explained in gameplay/physics.

FieldTypeDefaultNotes
connectedEntityEntity-1
linearVelocityVec2(0, 0)
maxVelocityForcenumber0
angularVelocitynumber0
maxVelocityTorquenumber0
linearHertznumber0
linearDampingRationumber0
maxSpringForcenumber0
angularHertznumber0
angularDampingRationumber0
maxSpringTorquenumber0
collideConnectedbooleanfalse
enabledbooleantrue

OneWayPlatform

Makes a collider solid from one side only, so a body passes up through it and lands on top.

Explained in gameplay/physics.

FieldTypeDefaultNotes
normalVec2(0, 1)
enabledbooleantrue

PointJoint3D

Holds two 3D bodies at a shared point, free to turn on all three axes — a chain link, a ragdoll limb.

Explained in gameplay/physics-3d.

FieldTypeDefaultNotes
connectedEntityEntity-1
anchorVec3(0, 0, 0)
collideConnectedbooleanfalse
enabledbooleantrue

PolygonCollider

A convex polygon collision shape from your own points.

Explained in gameplay/physics.

FieldTypeDefaultNotes
verticesVec2[][{"x":-0.5,"y":-0.5},{"x":0.5,"y":-0.5},{"x":0.5,"y":0.5},{"x":-0.5,"y":0.5}]
radiusnumber0
densitynumber1
frictionnumber0.3
restitutionnumber0
isSensorbooleanfalse
enabledbooleantrue
categoryBitsnumber1
maskBitsnumber65535

PrismaticJoint

Constrains two bodies to slide along one axis — a piston or lift.

Explained in gameplay/physics.

FieldTypeDefaultNotes
connectedEntityEntity-1
anchorAVec2(0, 0)
anchorBVec2(0, 0)
axisVec2(1, 0)
enableSpringbooleanfalse
hertznumber1
dampingRationumber0.5
enableLimitbooleanfalse
lowerTranslationnumber0
upperTranslationnumber0
enableMotorbooleanfalse
maxMotorForcenumber0
motorSpeednumber0
collideConnectedbooleanfalse
enabledbooleantrue

RevoluteJoint

Pins two bodies at a point and lets them rotate — a hinge, with optional limits and a motor.

Explained in gameplay/physics.

FieldTypeDefaultNotes
connectedEntityEntity-1
anchorAVec2(0, 0)
anchorBVec2(0, 0)
enableMotorbooleanfalse
motorSpeednumber0
maxMotorTorquenumber0
enableLimitbooleanfalse
lowerAnglenumber0
upperAnglenumber0
collideConnectedbooleanfalse
enabledbooleantrue

RigidBody

Puts the entity under the solver: static, kinematic or dynamic, with damping, gravity scale and sleep.

Explained in gameplay/physics.

FieldTypeDefaultNotes
bodyTypeenumDynamic One of Static, Kinematic, Dynamic.
gravityScalenumber1
linearDampingnumber0 Range ≥ 0.
angularDampingnumber0 Range ≥ 0.
fixedRotationbooleanfalse
bulletbooleanfalse
enabledbooleantrue

RigidBody3D

Puts the entity under the 3D solver — its own component set, so a 2D scene keeps the world it already has.

Explained in gameplay/physics-3d.

FieldTypeDefaultNotes
bodyTypeenumDynamic One of Static, Kinematic, Dynamic.
layernumber0 Range 0–15.
gravityScalenumber1 Range ≥ 0.
linearDampingnumber0.05 Range ≥ 0.
angularDampingnumber0.05 Range ≥ 0.
fixedRotationbooleanfalse
continuousCollisionbooleanfalseCheck the whole path a step covers — what a bullet needs
enabledbooleantrue

SegmentCollider

A single line segment — a one-sided wall or edge.

Explained in gameplay/physics.

FieldTypeDefaultNotes
point1Vec2(-0.5, 0)
point2Vec2(0.5, 0)
densitynumber1
frictionnumber0.3
restitutionnumber0
isSensorbooleanfalse
enabledbooleantrue
categoryBitsnumber1
maskBitsnumber65535

SliderJoint3D

One axis of travel between two 3D bodies — a lift or a piston, with optional limits and a motor.

Explained in gameplay/physics-3d.

FieldTypeDefaultNotes
connectedEntityEntity-1
anchorVec3(0, 0, 0)
axisVec3(0, 1, 0)
enableLimitbooleanfalse
lowerTranslationnumber-100
upperTranslationnumber100
enableMotorbooleanfalse
motorSpeednumber0
maxMotorForcenumber0
collideConnectedbooleanfalse
enabledbooleantrue
translationnumber0

SphereCollider3D

A sphere collision shape in 3D.

Explained in gameplay/physics-3d.

FieldTypeDefaultNotes
radiusnumber0.5 Range ≥ 0.
frictionnumber0.3 Range ≥ 0.
restitutionnumber0 Range 0–1.
isSensorbooleanfalse
enabledbooleantrue

WeldJoint

Locks two bodies rigidly together, with optional spring give.

Explained in gameplay/physics.

FieldTypeDefaultNotes
connectedEntityEntity-1
anchorAVec2(0, 0)
anchorBVec2(0, 0)
linearHertznumber0
angularHertznumber0
linearDampingRationumber1
angularDampingRationumber1
collideConnectedbooleanfalse
enabledbooleantrue

WheelJoint

A suspension axis plus a spinning axle — the wheel half of a vehicle.

Explained in gameplay/physics.

FieldTypeDefaultNotes
connectedEntityEntity-1
anchorAVec2(0, 0)
anchorBVec2(0, 0)
axisVec2(0, 1)
enableSpringbooleantrue
hertznumber5
dampingRationumber0.7
enableLimitbooleanfalse
lowerTranslationnumber0
upperTranslationnumber0
enableMotorbooleanfalse
maxMotorTorquenumber0
motorSpeednumber0
collideConnectedbooleanfalse
enabledbooleantrue