godot::classes

Struct PhysicsServer2D

#[repr(C)]
pub struct PhysicsServer2D { /* private fields */ }
Expand description

Godot class PhysicsServer2D.

Inherits Object.

Related symbols:

See also Godot docs for PhysicsServer2D.

§Singleton

This class is a singleton. You can get the one instance using PhysicsServer2D::singleton().

Implementations§

§

impl PhysicsServer2D

pub fn singleton() -> Gd<PhysicsServer2D>

pub fn world_boundary_shape_create(&mut self) -> Rid

pub fn separation_ray_shape_create(&mut self) -> Rid

pub fn segment_shape_create(&mut self) -> Rid

pub fn circle_shape_create(&mut self) -> Rid

pub fn rectangle_shape_create(&mut self) -> Rid

pub fn capsule_shape_create(&mut self) -> Rid

pub fn convex_polygon_shape_create(&mut self) -> Rid

pub fn concave_polygon_shape_create(&mut self) -> Rid

pub fn shape_set_data(&mut self, shape: Rid, data: &Variant)

pub fn shape_get_type(&self, shape: Rid) -> ShapeType

pub fn shape_get_data(&self, shape: Rid) -> Variant

pub fn space_create(&mut self) -> Rid

pub fn space_set_active(&mut self, space: Rid, active: bool)

pub fn space_is_active(&self, space: Rid) -> bool

pub fn space_set_param(&mut self, space: Rid, param: SpaceParameter, value: f32)

pub fn space_get_param(&self, space: Rid, param: SpaceParameter) -> f32

pub fn space_get_direct_state( &mut self, space: Rid, ) -> Option<Gd<PhysicsDirectSpaceState2D>>

pub fn area_create(&mut self) -> Rid

pub fn area_set_space(&mut self, area: Rid, space: Rid)

pub fn area_get_space(&self, area: Rid) -> Rid

pub fn area_add_shape(&mut self, area: Rid, shape: Rid)

To set the default parameters, use Self::area_add_shape_ex and its builder methods. See the book for detailed usage instructions.

pub fn area_add_shape_ex<'a>( &'a mut self, area: Rid, shape: Rid, ) -> ExAreaAddShape<'a>

pub fn area_set_shape(&mut self, area: Rid, shape_idx: i32, shape: Rid)

pub fn area_set_shape_transform( &mut self, area: Rid, shape_idx: i32, transform: Transform2D, )

pub fn area_set_shape_disabled( &mut self, area: Rid, shape_idx: i32, disabled: bool, )

pub fn area_get_shape_count(&self, area: Rid) -> i32

pub fn area_get_shape(&self, area: Rid, shape_idx: i32) -> Rid

pub fn area_get_shape_transform(&self, area: Rid, shape_idx: i32) -> Transform2D

pub fn area_remove_shape(&mut self, area: Rid, shape_idx: i32)

pub fn area_clear_shapes(&mut self, area: Rid)

pub fn area_set_collision_layer(&mut self, area: Rid, layer: u32)

pub fn area_get_collision_layer(&self, area: Rid) -> u32

pub fn area_set_collision_mask(&mut self, area: Rid, mask: u32)

pub fn area_get_collision_mask(&self, area: Rid) -> u32

pub fn area_set_param( &mut self, area: Rid, param: AreaParameter, value: &Variant, )

pub fn area_set_transform(&mut self, area: Rid, transform: Transform2D)

pub fn area_get_param(&self, area: Rid, param: AreaParameter) -> Variant

pub fn area_get_transform(&self, area: Rid) -> Transform2D

pub fn area_attach_object_instance_id(&mut self, area: Rid, id: u64)

pub fn area_get_object_instance_id(&self, area: Rid) -> u64

pub fn area_attach_canvas_instance_id(&mut self, area: Rid, id: u64)

pub fn area_get_canvas_instance_id(&self, area: Rid) -> u64

pub fn area_set_monitor_callback(&mut self, area: Rid, callback: &Callable)

pub fn area_set_area_monitor_callback(&mut self, area: Rid, callback: &Callable)

pub fn area_set_monitorable(&mut self, area: Rid, monitorable: bool)

pub fn body_create(&mut self) -> Rid

pub fn body_set_space(&mut self, body: Rid, space: Rid)

pub fn body_get_space(&self, body: Rid) -> Rid

pub fn body_set_mode(&mut self, body: Rid, mode: BodyMode)

pub fn body_get_mode(&self, body: Rid) -> BodyMode

pub fn body_add_shape(&mut self, body: Rid, shape: Rid)

To set the default parameters, use Self::body_add_shape_ex and its builder methods. See the book for detailed usage instructions.

pub fn body_add_shape_ex<'a>( &'a mut self, body: Rid, shape: Rid, ) -> ExBodyAddShape<'a>

pub fn body_set_shape(&mut self, body: Rid, shape_idx: i32, shape: Rid)

pub fn body_set_shape_transform( &mut self, body: Rid, shape_idx: i32, transform: Transform2D, )

pub fn body_get_shape_count(&self, body: Rid) -> i32

pub fn body_get_shape(&self, body: Rid, shape_idx: i32) -> Rid

pub fn body_get_shape_transform(&self, body: Rid, shape_idx: i32) -> Transform2D

pub fn body_remove_shape(&mut self, body: Rid, shape_idx: i32)

pub fn body_clear_shapes(&mut self, body: Rid)

pub fn body_set_shape_disabled( &mut self, body: Rid, shape_idx: i32, disabled: bool, )

pub fn body_set_shape_as_one_way_collision( &mut self, body: Rid, shape_idx: i32, enable: bool, margin: f32, )

pub fn body_attach_object_instance_id(&mut self, body: Rid, id: u64)

pub fn body_get_object_instance_id(&self, body: Rid) -> u64

pub fn body_attach_canvas_instance_id(&mut self, body: Rid, id: u64)

pub fn body_get_canvas_instance_id(&self, body: Rid) -> u64

pub fn body_set_continuous_collision_detection_mode( &mut self, body: Rid, mode: CcdMode, )

pub fn body_get_continuous_collision_detection_mode(&self, body: Rid) -> CcdMode

pub fn body_set_collision_layer(&mut self, body: Rid, layer: u32)

pub fn body_get_collision_layer(&self, body: Rid) -> u32

pub fn body_set_collision_mask(&mut self, body: Rid, mask: u32)

pub fn body_get_collision_mask(&self, body: Rid) -> u32

pub fn body_set_collision_priority(&mut self, body: Rid, priority: f32)

pub fn body_get_collision_priority(&self, body: Rid) -> f32

pub fn body_set_param( &mut self, body: Rid, param: BodyParameter, value: &Variant, )

pub fn body_get_param(&self, body: Rid, param: BodyParameter) -> Variant

pub fn body_reset_mass_properties(&mut self, body: Rid)

pub fn body_set_state(&mut self, body: Rid, state: BodyState, value: &Variant)

pub fn body_get_state(&self, body: Rid, state: BodyState) -> Variant

pub fn body_apply_central_impulse(&mut self, body: Rid, impulse: Vector2)

pub fn body_apply_torque_impulse(&mut self, body: Rid, impulse: f32)

pub fn body_apply_impulse(&mut self, body: Rid, impulse: Vector2)

To set the default parameters, use Self::body_apply_impulse_ex and its builder methods. See the book for detailed usage instructions.

pub fn body_apply_impulse_ex<'a>( &'a mut self, body: Rid, impulse: Vector2, ) -> ExBodyApplyImpulse<'a>

pub fn body_apply_central_force(&mut self, body: Rid, force: Vector2)

pub fn body_apply_force(&mut self, body: Rid, force: Vector2)

To set the default parameters, use Self::body_apply_force_ex and its builder methods. See the book for detailed usage instructions.

pub fn body_apply_force_ex<'a>( &'a mut self, body: Rid, force: Vector2, ) -> ExBodyApplyForce<'a>

pub fn body_apply_torque(&mut self, body: Rid, torque: f32)

pub fn body_add_constant_central_force(&mut self, body: Rid, force: Vector2)

pub fn body_add_constant_force(&mut self, body: Rid, force: Vector2)

To set the default parameters, use Self::body_add_constant_force_ex and its builder methods. See the book for detailed usage instructions.

pub fn body_add_constant_force_ex<'a>( &'a mut self, body: Rid, force: Vector2, ) -> ExBodyAddConstantForce<'a>

pub fn body_add_constant_torque(&mut self, body: Rid, torque: f32)

pub fn body_set_constant_force(&mut self, body: Rid, force: Vector2)

pub fn body_get_constant_force(&self, body: Rid) -> Vector2

pub fn body_set_constant_torque(&mut self, body: Rid, torque: f32)

pub fn body_get_constant_torque(&self, body: Rid) -> f32

pub fn body_set_axis_velocity(&mut self, body: Rid, axis_velocity: Vector2)

pub fn body_add_collision_exception(&mut self, body: Rid, excepted_body: Rid)

pub fn body_remove_collision_exception(&mut self, body: Rid, excepted_body: Rid)

pub fn body_set_max_contacts_reported(&mut self, body: Rid, amount: i32)

pub fn body_get_max_contacts_reported(&self, body: Rid) -> i32

pub fn body_set_omit_force_integration(&mut self, body: Rid, enable: bool)

pub fn body_is_omitting_force_integration(&self, body: Rid) -> bool

pub fn body_set_state_sync_callback(&mut self, body: Rid, callable: &Callable)

pub fn body_set_force_integration_callback( &mut self, body: Rid, callable: &Callable, )

To set the default parameters, use Self::body_set_force_integration_callback_ex and its builder methods. See the book for detailed usage instructions.

pub fn body_set_force_integration_callback_ex<'a>( &'a mut self, body: Rid, callable: &'a Callable, ) -> ExBodySetForceIntegrationCallback<'a>

pub fn body_test_motion( &mut self, body: Rid, parameters: impl AsObjectArg<PhysicsTestMotionParameters2D>, ) -> bool

To set the default parameters, use Self::body_test_motion_ex and its builder methods. See the book for detailed usage instructions.

pub fn body_test_motion_ex<'a>( &'a mut self, body: Rid, parameters: impl AsObjectArg<PhysicsTestMotionParameters2D>, ) -> ExBodyTestMotion<'a>

pub fn body_get_direct_state( &mut self, body: Rid, ) -> Option<Gd<PhysicsDirectBodyState2D>>

pub fn joint_create(&mut self) -> Rid

pub fn joint_clear(&mut self, joint: Rid)

pub fn joint_set_param(&mut self, joint: Rid, param: JointParam, value: f32)

pub fn joint_get_param(&self, joint: Rid, param: JointParam) -> f32

pub fn joint_disable_collisions_between_bodies( &mut self, joint: Rid, disable: bool, )

pub fn joint_is_disabled_collisions_between_bodies(&self, joint: Rid) -> bool

pub fn joint_make_pin(&mut self, joint: Rid, anchor: Vector2, body_a: Rid)

To set the default parameters, use Self::joint_make_pin_ex and its builder methods. See the book for detailed usage instructions.

pub fn joint_make_pin_ex<'a>( &'a mut self, joint: Rid, anchor: Vector2, body_a: Rid, ) -> ExJointMakePin<'a>

pub fn joint_make_groove( &mut self, joint: Rid, groove1_a: Vector2, groove2_a: Vector2, anchor_b: Vector2, )

To set the default parameters, use Self::joint_make_groove_ex and its builder methods. See the book for detailed usage instructions.

pub fn joint_make_groove_ex<'a>( &'a mut self, joint: Rid, groove1_a: Vector2, groove2_a: Vector2, anchor_b: Vector2, ) -> ExJointMakeGroove<'a>

pub fn joint_make_damped_spring( &mut self, joint: Rid, anchor_a: Vector2, anchor_b: Vector2, body_a: Rid, )

To set the default parameters, use Self::joint_make_damped_spring_ex and its builder methods. See the book for detailed usage instructions.

pub fn joint_make_damped_spring_ex<'a>( &'a mut self, joint: Rid, anchor_a: Vector2, anchor_b: Vector2, body_a: Rid, ) -> ExJointMakeDampedSpring<'a>

pub fn pin_joint_set_flag( &mut self, joint: Rid, flag: PinJointFlag, enabled: bool, )

pub fn pin_joint_get_flag(&self, joint: Rid, flag: PinJointFlag) -> bool

pub fn pin_joint_set_param( &mut self, joint: Rid, param: PinJointParam, value: f32, )

pub fn pin_joint_get_param(&self, joint: Rid, param: PinJointParam) -> f32

pub fn damped_spring_joint_set_param( &mut self, joint: Rid, param: DampedSpringParam, value: f32, )

pub fn damped_spring_joint_get_param( &self, joint: Rid, param: DampedSpringParam, ) -> f32

pub fn joint_get_type(&self, joint: Rid) -> JointType

pub fn free_rid(&mut self, rid: Rid)

pub fn set_active(&mut self, active: bool)

pub fn get_process_info(&mut self, process_info: ProcessInfo) -> i32

Methods from Deref<Target = Object>§

pub fn get_class(&self) -> GString

pub fn is_class(&self, class: impl AsArg<GString>) -> bool

pub fn set(&mut self, property: impl AsArg<StringName>, value: &Variant)

pub fn get(&self, property: impl AsArg<StringName>) -> Variant

pub fn set_indexed( &mut self, property_path: impl AsArg<NodePath>, value: &Variant, )

pub fn get_indexed(&self, property_path: impl AsArg<NodePath>) -> Variant

pub fn get_property_list(&self) -> Array<Dictionary>

pub fn get_method_list(&self) -> Array<Dictionary>

pub fn property_can_revert(&self, property: impl AsArg<StringName>) -> bool

pub fn property_get_revert(&self, property: impl AsArg<StringName>) -> Variant

pub fn set_script(&mut self, script: &Variant)

pub fn get_script(&self) -> Variant

pub fn set_meta(&mut self, name: impl AsArg<StringName>, value: &Variant)

pub fn remove_meta(&mut self, name: impl AsArg<StringName>)

pub fn get_meta(&self, name: impl AsArg<StringName>) -> Variant

To set the default parameters, use Self::get_meta_ex and its builder methods. See the book for detailed usage instructions.

pub fn get_meta_ex<'a>( &'a self, name: impl AsArg<StringName> + 'a, ) -> ExGetMeta<'a>

pub fn has_meta(&self, name: impl AsArg<StringName>) -> bool

pub fn get_meta_list(&self) -> Array<StringName>

pub fn add_user_signal(&mut self, signal: impl AsArg<GString>)

To set the default parameters, use Self::add_user_signal_ex and its builder methods. See the book for detailed usage instructions.

pub fn add_user_signal_ex<'a>( &'a mut self, signal: impl AsArg<GString> + 'a, ) -> ExAddUserSignal<'a>

pub fn has_user_signal(&self, signal: impl AsArg<StringName>) -> bool

pub fn remove_user_signal(&mut self, signal: impl AsArg<StringName>)

pub fn emit_signal( &mut self, signal: impl AsArg<StringName>, varargs: &[Variant], ) -> Error

§Panics

This is a varcall method, meaning parameters and return values are passed as Variant. It can detect call failures and will panic in such a case.

pub fn try_emit_signal( &mut self, signal: impl AsArg<StringName>, varargs: &[Variant], ) -> Result<Error, CallError>

§Return type

This is a varcall method, meaning parameters and return values are passed as Variant. It can detect call failures and will return Err in such a case.

pub fn call( &mut self, method: impl AsArg<StringName>, varargs: &[Variant], ) -> Variant

§Panics

This is a varcall method, meaning parameters and return values are passed as Variant. It can detect call failures and will panic in such a case.

pub fn try_call( &mut self, method: impl AsArg<StringName>, varargs: &[Variant], ) -> Result<Variant, CallError>

§Return type

This is a varcall method, meaning parameters and return values are passed as Variant. It can detect call failures and will return Err in such a case.

pub fn call_deferred( &mut self, method: impl AsArg<StringName>, varargs: &[Variant], ) -> Variant

§Panics

This is a varcall method, meaning parameters and return values are passed as Variant. It can detect call failures and will panic in such a case.

pub fn try_call_deferred( &mut self, method: impl AsArg<StringName>, varargs: &[Variant], ) -> Result<Variant, CallError>

§Return type

This is a varcall method, meaning parameters and return values are passed as Variant. It can detect call failures and will return Err in such a case.

pub fn set_deferred( &mut self, property: impl AsArg<StringName>, value: &Variant, )

pub fn callv( &mut self, method: impl AsArg<StringName>, arg_array: &Array<Variant>, ) -> Variant

pub fn has_method(&self, method: impl AsArg<StringName>) -> bool

pub fn get_method_argument_count(&self, method: impl AsArg<StringName>) -> i32

pub fn has_signal(&self, signal: impl AsArg<StringName>) -> bool

pub fn get_signal_list(&self) -> Array<Dictionary>

pub fn get_signal_connection_list( &self, signal: impl AsArg<StringName>, ) -> Array<Dictionary>

pub fn get_incoming_connections(&self) -> Array<Dictionary>

pub fn connect( &mut self, signal: impl AsArg<StringName>, callable: &Callable, ) -> Error

To set the default parameters, use Self::connect_ex and its builder methods. See the book for detailed usage instructions.

pub fn connect_ex<'a>( &'a mut self, signal: impl AsArg<StringName> + 'a, callable: &'a Callable, ) -> ExConnect<'a>

pub fn disconnect( &mut self, signal: impl AsArg<StringName>, callable: &Callable, )

pub fn is_connected( &self, signal: impl AsArg<StringName>, callable: &Callable, ) -> bool

pub fn set_block_signals(&mut self, enable: bool)

pub fn is_blocking_signals(&self) -> bool

pub fn notify_property_list_changed(&mut self)

pub fn set_message_translation(&mut self, enable: bool)

pub fn can_translate_messages(&self) -> bool

pub fn tr(&self, message: impl AsArg<StringName>) -> GString

To set the default parameters, use Self::tr_ex and its builder methods. See the book for detailed usage instructions.

pub fn tr_ex<'a>(&'a self, message: impl AsArg<StringName> + 'a) -> ExTr<'a>

pub fn tr_n( &self, message: impl AsArg<StringName>, plural_message: impl AsArg<StringName>, n: i32, ) -> GString

To set the default parameters, use Self::tr_n_ex and its builder methods. See the book for detailed usage instructions.

pub fn tr_n_ex<'a>( &'a self, message: impl AsArg<StringName> + 'a, plural_message: impl AsArg<StringName> + 'a, n: i32, ) -> ExTrN<'a>

pub fn is_queued_for_deletion(&self) -> bool

pub fn cancel_free(&mut self)

pub fn notify(&mut self, what: ObjectNotification)

⚠️ Sends a Godot notification to all classes inherited by the object.

Triggers calls to on_notification(), and depending on the notification, also to Godot’s lifecycle callbacks such as ready().

Starts from the highest ancestor (the Object class) and goes down the hierarchy. See also Godot docs for Object::notification().

§Panics

If you call this method on a user-defined object while holding a GdRef or GdMut guard on the instance, you will encounter a panic. The reason is that the receiving virtual method on_notification() acquires a GdMut lock dynamically, which must be exclusive.

pub fn notify_reversed(&mut self, what: ObjectNotification)

⚠️ Like Self::notify(), but starts at the most-derived class and goes up the hierarchy.

See docs of that method, including the panics.

Trait Implementations§

§

impl Bounds for PhysicsServer2D

§

type Memory = MemManual

Defines the memory strategy of the static type.
§

type Declarer = DeclEngine

Whether this class is a core Godot class provided by the engine, or declared by the user as a Rust struct.
§

impl Debug for PhysicsServer2D

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl Deref for PhysicsServer2D

§

type Target = Object

The resulting type after dereferencing.
§

fn deref(&self) -> &<PhysicsServer2D as Deref>::Target

Dereferences the value.
§

impl DerefMut for PhysicsServer2D

§

fn deref_mut(&mut self) -> &mut <PhysicsServer2D as Deref>::Target

Mutably dereferences the value.
§

impl GodotClass for PhysicsServer2D

§

const INIT_LEVEL: InitLevel = crate::init::InitLevel::Servers

Initialization level, during which this class should be initialized with Godot. Read more
§

type Base = Object

The immediate superclass of T. This is always a Godot engine class.
§

fn class_name() -> ClassName

The name of the class, under which it is registered in Godot. Read more
§

fn inherits<U>() -> bool
where U: GodotClass,

Returns whether Self inherits from U. Read more
§

impl Inherits<Object> for PhysicsServer2D

§

impl Inherits<PhysicsServer2D> for PhysicsServer2DExtension

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> Inherits<T> for T
where T: GodotClass,