Struct PhysicsServer2DExtension
#[repr(C)]pub struct PhysicsServer2DExtension { /* private fields */ }
Expand description
Godot class PhysicsServer2DExtension.
Inherits PhysicsServer2D
.
Related symbols:
IPhysicsServer2DExtension
: virtual methods
See also Godot docs for PhysicsServer2DExtension
.
§Construction
This class is manually managed. You can create a new instance using PhysicsServer2DExtension::new_alloc()
.
Do not forget to call free()
or hand over ownership to Godot.
Implementations§
§impl PhysicsServer2DExtension
impl PhysicsServer2DExtension
pub fn body_test_motion_is_excluding_body(&self, body: Rid) -> bool
pub fn body_test_motion_is_excluding_object(&self, object: u64) -> bool
Methods from Deref<Target = 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)
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)
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)
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)
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)
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,
)
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
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)
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,
)
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,
)
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
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>)
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
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>
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
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>
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
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>
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
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
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
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)
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)
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 PhysicsServer2DExtension
impl Bounds for PhysicsServer2DExtension
§impl Debug for PhysicsServer2DExtension
impl Debug for PhysicsServer2DExtension
§impl Deref for PhysicsServer2DExtension
impl Deref for PhysicsServer2DExtension
§type Target = PhysicsServer2D
type Target = PhysicsServer2D
§fn deref(&self) -> &<PhysicsServer2DExtension as Deref>::Target
fn deref(&self) -> &<PhysicsServer2DExtension as Deref>::Target
§impl DerefMut for PhysicsServer2DExtension
impl DerefMut for PhysicsServer2DExtension
§fn deref_mut(&mut self) -> &mut <PhysicsServer2DExtension as Deref>::Target
fn deref_mut(&mut self) -> &mut <PhysicsServer2DExtension as Deref>::Target
§impl GodotClass for PhysicsServer2DExtension
impl GodotClass for PhysicsServer2DExtension
§const INIT_LEVEL: InitLevel = crate::init::InitLevel::Servers
const INIT_LEVEL: InitLevel = crate::init::InitLevel::Servers
§type Base = PhysicsServer2D
type Base = PhysicsServer2D
T
. This is always a Godot engine class.