StaticBody2D

继承: PhysicsBody2D < CollisionObject2D < Node2D < CanvasItem < Node < Object

派生: AnimatableBody2D

无法被外力移动的 2D 物理物体。手动移动时不会影响路径上的其他物体。

描述

静态 2D 物理体。无法因外力或接触而移动,但可以通过代码、AnimationMixerAnimationMixer.callback_mode_process 设为 AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS)、RemoteTransform2D 等方法手动移动。

StaticBody2D 发生移动时,是传送到新位置上的,不会影响路径上的其他物理体。如果不想要这样的行为,请改用 AnimatableBody2D

StaticBody2D 常用于完全静态的地板、墙壁等对象,也可以用于传送带、圆形回转平台等移动的表面(使用 constant_linear_velocityconstant_angular_velocity)。

属性

float

constant_angular_velocity

0.0

Vector2

constant_linear_velocity

Vector2(0, 0)

PhysicsMaterial

physics_material_override


属性说明

float constant_angular_velocity = 0.0 🔗

  • void set_constant_angular_velocity(value: float)

  • float get_constant_angular_velocity()

该物体的恒定角速度。不会旋转该物体,但会影响接触的物体,就好像这个物体正在旋转一样。


Vector2 constant_linear_velocity = Vector2(0, 0) 🔗

  • void set_constant_linear_velocity(value: Vector2)

  • Vector2 get_constant_linear_velocity()

该物体的恒定线速度。不会移动该物体,但会影响接触的物体,就好像这个物体正在移动一样。


PhysicsMaterial physics_material_override 🔗

物体的物理材质。

如果为该属性指定了一种材质,则将使用该材质代替任何其他物理材质,例如继承的材质。