Up to date

This page is up to date for Godot 4.3. If you still find outdated information, please open an issue.

PhysicsDirectBodyState2DExtensionΒΆ

Inherits: PhysicsDirectBodyState2D < Object

Provides virtual methods that can be overridden to create custom PhysicsDirectBodyState2D implementations.

DescriptionΒΆ

This class extends PhysicsDirectBodyState2D by providing additional virtual methods that can be overridden. When these methods are overridden, they will be called instead of the internal methods of the physics server.

Intended for use with GDExtension to create custom implementations of PhysicsDirectBodyState2D.

MethodsΒΆ

void

_add_constant_central_force(force: Vector2) virtual

void

_add_constant_force(force: Vector2, position: Vector2) virtual

void

_add_constant_torque(torque: float) virtual

void

_apply_central_force(force: Vector2) virtual

void

_apply_central_impulse(impulse: Vector2) virtual

void

_apply_force(force: Vector2, position: Vector2) virtual

void

_apply_impulse(impulse: Vector2, position: Vector2) virtual

void

_apply_torque(torque: float) virtual

void

_apply_torque_impulse(impulse: float) virtual

float

_get_angular_velocity() virtual const

Vector2

_get_center_of_mass() virtual const

Vector2

_get_center_of_mass_local() virtual const

Vector2

_get_constant_force() virtual const

float

_get_constant_torque() virtual const

RID

_get_contact_collider(contact_idx: int) virtual const

int

_get_contact_collider_id(contact_idx: int) virtual const

Object

_get_contact_collider_object(contact_idx: int) virtual const

Vector2

_get_contact_collider_position(contact_idx: int) virtual const

int

_get_contact_collider_shape(contact_idx: int) virtual const

Vector2

_get_contact_collider_velocity_at_position(contact_idx: int) virtual const

int

_get_contact_count() virtual const

Vector2

_get_contact_impulse(contact_idx: int) virtual const

Vector2

_get_contact_local_normal(contact_idx: int) virtual const

Vector2

_get_contact_local_position(contact_idx: int) virtual const

int

_get_contact_local_shape(contact_idx: int) virtual const

Vector2

_get_contact_local_velocity_at_position(contact_idx: int) virtual const

float

_get_inverse_inertia() virtual const

float

_get_inverse_mass() virtual const

Vector2

_get_linear_velocity() virtual const

PhysicsDirectSpaceState2D

_get_space_state() virtual

float

_get_step() virtual const

float

_get_total_angular_damp() virtual const

Vector2

_get_total_gravity() virtual const

float

_get_total_linear_damp() virtual const

Transform2D

_get_transform() virtual const

Vector2

_get_velocity_at_local_position(local_position: Vector2) virtual const

void

_integrate_forces() virtual

bool

_is_sleeping() virtual const

void

_set_angular_velocity(velocity: float) virtual

void

_set_constant_force(force: Vector2) virtual

void

_set_constant_torque(torque: float) virtual

void

_set_linear_velocity(velocity: Vector2) virtual

void

_set_sleep_state(enabled: bool) virtual

void

_set_transform(transform: Transform2D) virtual


Method DescriptionsΒΆ

void _add_constant_central_force(force: Vector2) virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.add_constant_central_force.


void _add_constant_force(force: Vector2, position: Vector2) virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.add_constant_force.


void _add_constant_torque(torque: float) virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.add_constant_torque.


void _apply_central_force(force: Vector2) virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.apply_central_force.


void _apply_central_impulse(impulse: Vector2) virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.apply_central_impulse.


void _apply_force(force: Vector2, position: Vector2) virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.apply_force.


void _apply_impulse(impulse: Vector2, position: Vector2) virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.apply_impulse.


void _apply_torque(torque: float) virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.apply_torque.


void _apply_torque_impulse(impulse: float) virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.apply_torque_impulse.


float _get_angular_velocity() virtual const πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.angular_velocity and its respective getter.


Vector2 _get_center_of_mass() virtual const πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.center_of_mass and its respective getter.


Vector2 _get_center_of_mass_local() virtual const πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.center_of_mass_local and its respective getter.


Vector2 _get_constant_force() virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_constant_force.


float _get_constant_torque() virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_constant_torque.


RID _get_contact_collider(contact_idx: int) virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_contact_collider.


int _get_contact_collider_id(contact_idx: int) virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_contact_collider_id.


Object _get_contact_collider_object(contact_idx: int) virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_contact_collider_object.


Vector2 _get_contact_collider_position(contact_idx: int) virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_contact_collider_position.


int _get_contact_collider_shape(contact_idx: int) virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_contact_collider_shape.


Vector2 _get_contact_collider_velocity_at_position(contact_idx: int) virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_contact_collider_velocity_at_position.


int _get_contact_count() virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_contact_count.


Vector2 _get_contact_impulse(contact_idx: int) virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_contact_impulse.


Vector2 _get_contact_local_normal(contact_idx: int) virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_contact_local_normal.


Vector2 _get_contact_local_position(contact_idx: int) virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_contact_local_position.


int _get_contact_local_shape(contact_idx: int) virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_contact_local_shape.


Vector2 _get_contact_local_velocity_at_position(contact_idx: int) virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_contact_local_velocity_at_position.


float _get_inverse_inertia() virtual const πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.inverse_inertia and its respective getter.


float _get_inverse_mass() virtual const πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.inverse_mass and its respective getter.


Vector2 _get_linear_velocity() virtual const πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.linear_velocity and its respective getter.


PhysicsDirectSpaceState2D _get_space_state() virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_space_state.


float _get_step() virtual const πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.step and its respective getter.


float _get_total_angular_damp() virtual const πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.total_angular_damp and its respective getter.


Vector2 _get_total_gravity() virtual const πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.total_gravity and its respective getter.


float _get_total_linear_damp() virtual const πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.total_linear_damp and its respective getter.


Transform2D _get_transform() virtual const πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.transform and its respective getter.


Vector2 _get_velocity_at_local_position(local_position: Vector2) virtual const πŸ”—

Overridable version of PhysicsDirectBodyState2D.get_velocity_at_local_position.


void _integrate_forces() virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.integrate_forces.


bool _is_sleeping() virtual const πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.sleeping and its respective getter.


void _set_angular_velocity(velocity: float) virtual πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.angular_velocity and its respective setter.


void _set_constant_force(force: Vector2) virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.set_constant_force.


void _set_constant_torque(torque: float) virtual πŸ”—

Overridable version of PhysicsDirectBodyState2D.set_constant_torque.


void _set_linear_velocity(velocity: Vector2) virtual πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.linear_velocity and its respective setter.


void _set_sleep_state(enabled: bool) virtual πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.sleeping and its respective setter.


void _set_transform(transform: Transform2D) virtual πŸ”—

Implement to override the behavior of PhysicsDirectBodyState2D.transform and its respective setter.