Struct godot::engine::PhysicsServer3D

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

Godot class PhysicsServer3D.

Inherits Object.

Related symbols:

See also Godot docs for PhysicsServer3D.

§Singleton

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

Implementations§

§

impl PhysicsServer3D

pub fn singleton() -> Gd<PhysicsServer3D>

pub fn world_boundary_shape_create(&mut self) -> Rid

pub fn separation_ray_shape_create(&mut self) -> Rid

pub fn sphere_shape_create(&mut self) -> Rid

pub fn box_shape_create(&mut self) -> Rid

pub fn capsule_shape_create(&mut self) -> Rid

pub fn cylinder_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 heightmap_shape_create(&mut self) -> Rid

pub fn custom_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<PhysicsDirectSpaceState3D>>

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_ex(&mut self, area: Rid, shape: Rid) -> ExAreaAddShape<'_>

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: Transform3D )

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) -> Transform3D

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: Transform3D)

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

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

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_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 area_set_ray_pickable(&mut self, area: Rid, enable: 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_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_add_shape(&mut self, body: Rid, shape: Rid)

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

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: Transform3D )

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

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) -> Transform3D

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

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

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_set_enable_continuous_collision_detection( &mut self, body: Rid, enable: bool )

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

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: Vector3)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

pub fn body_set_axis_lock(&mut self, body: Rid, axis: BodyAxis, lock: bool)

pub fn body_is_axis_locked(&self, body: Rid, axis: BodyAxis) -> bool

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_force_integration_callback( &mut self, body: Rid, callable: Callable )

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

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

pub fn body_test_motion( &mut self, body: Rid, parameters: Gd<PhysicsTestMotionParameters3D> ) -> bool

pub fn body_test_motion_ex( &mut self, body: Rid, parameters: Gd<PhysicsTestMotionParameters3D> ) -> ExBodyTestMotion<'_>

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

pub fn soft_body_create(&mut self) -> Rid

pub fn soft_body_update_rendering_server( &mut self, body: Rid, rendering_server_handler: Gd<PhysicsServer3DRenderingServerHandler> )

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

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

pub fn soft_body_set_mesh(&mut self, body: Rid, mesh: Rid)

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

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

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

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

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

pub fn soft_body_add_collision_exception(&mut self, body: Rid, body_b: Rid)

pub fn soft_body_remove_collision_exception(&mut self, body: Rid, body_b: Rid)

pub fn soft_body_set_state( &mut self, body: Rid, state: BodyState, variant: Variant )

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

pub fn soft_body_set_transform(&mut self, body: Rid, transform: Transform3D)

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

pub fn soft_body_set_simulation_precision( &mut self, body: Rid, simulation_precision: i32 )

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

pub fn soft_body_set_total_mass(&mut self, body: Rid, total_mass: f32)

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

pub fn soft_body_set_linear_stiffness(&mut self, body: Rid, stiffness: f32)

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

pub fn soft_body_set_pressure_coefficient( &mut self, body: Rid, pressure_coefficient: f32 )

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

pub fn soft_body_set_damping_coefficient( &mut self, body: Rid, damping_coefficient: f32 )

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

pub fn soft_body_set_drag_coefficient( &mut self, body: Rid, drag_coefficient: f32 )

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

pub fn soft_body_move_point( &mut self, body: Rid, point_index: i32, global_position: Vector3 )

pub fn soft_body_get_point_global_position( &self, body: Rid, point_index: i32 ) -> Vector3

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

pub fn soft_body_pin_point(&mut self, body: Rid, point_index: i32, pin: bool)

pub fn soft_body_is_point_pinned(&self, body: Rid, point_index: i32) -> bool

pub fn joint_create(&mut self) -> Rid

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

pub fn joint_make_pin( &mut self, joint: Rid, body_A: Rid, local_A: Vector3, body_B: Rid, local_B: Vector3 )

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 pin_joint_set_local_a(&mut self, joint: Rid, local_A: Vector3)

pub fn pin_joint_get_local_a(&self, joint: Rid) -> Vector3

pub fn pin_joint_set_local_b(&mut self, joint: Rid, local_B: Vector3)

pub fn pin_joint_get_local_b(&self, joint: Rid) -> Vector3

pub fn joint_make_hinge( &mut self, joint: Rid, body_A: Rid, hinge_A: Transform3D, body_B: Rid, hinge_B: Transform3D )

pub fn hinge_joint_set_param( &mut self, joint: Rid, param: HingeJointParam, value: f32 )

pub fn hinge_joint_get_param(&self, joint: Rid, param: HingeJointParam) -> f32

pub fn hinge_joint_set_flag( &mut self, joint: Rid, flag: HingeJointFlag, enabled: bool )

pub fn hinge_joint_get_flag(&self, joint: Rid, flag: HingeJointFlag) -> bool

pub fn joint_make_slider( &mut self, joint: Rid, body_A: Rid, local_ref_A: Transform3D, body_B: Rid, local_ref_B: Transform3D )

pub fn slider_joint_set_param( &mut self, joint: Rid, param: SliderJointParam, value: f32 )

pub fn slider_joint_get_param(&self, joint: Rid, param: SliderJointParam) -> f32

pub fn joint_make_cone_twist( &mut self, joint: Rid, body_A: Rid, local_ref_A: Transform3D, body_B: Rid, local_ref_B: Transform3D )

pub fn cone_twist_joint_set_param( &mut self, joint: Rid, param: ConeTwistJointParam, value: f32 )

pub fn cone_twist_joint_get_param( &self, joint: Rid, param: ConeTwistJointParam ) -> f32

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

pub fn joint_set_solver_priority(&mut self, joint: Rid, priority: i32)

pub fn joint_get_solver_priority(&self, joint: Rid) -> i32

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_generic_6dof( &mut self, joint: Rid, body_A: Rid, local_ref_A: Transform3D, body_B: Rid, local_ref_B: Transform3D )

pub fn generic_6dof_joint_set_param( &mut self, joint: Rid, axis: Vector3Axis, param: G6dofJointAxisParam, value: f32 )

pub fn generic_6dof_joint_get_param( &self, joint: Rid, axis: Vector3Axis, param: G6dofJointAxisParam ) -> f32

pub fn generic_6dof_joint_set_flag( &mut self, joint: Rid, axis: Vector3Axis, flag: G6dofJointAxisFlag, enable: bool )

pub fn generic_6dof_joint_get_flag( &self, joint: Rid, axis: Vector3Axis, flag: G6dofJointAxisFlag ) -> bool

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: GString) -> bool

pub fn set(&mut self, property: StringName, value: Variant)

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

pub fn set_indexed(&mut self, property_path: NodePath, value: Variant)

pub fn get_indexed(&self, property_path: 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: StringName) -> bool

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

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

pub fn get_script(&self) -> Variant

pub fn set_meta(&mut self, name: StringName, value: Variant)

pub fn remove_meta(&mut self, name: StringName)

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

pub fn get_meta_ex(&self, name: StringName) -> ExGetMeta<'_>

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

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

pub fn add_user_signal(&mut self, signal: GString)

pub fn add_user_signal_ex(&mut self, signal: GString) -> ExAddUserSignal<'_>

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

pub fn remove_user_signal(&mut self, signal: StringName)

pub fn emit_signal(&mut self, signal: 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: 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: 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: 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: 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: 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: StringName, value: Variant)

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

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

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

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

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

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

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

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

pub fn connect_ex( &mut self, signal: StringName, callable: Callable ) -> ExConnect<'_>

pub fn disconnect(&mut self, signal: StringName, callable: Callable)

pub fn is_connected(&self, signal: 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: StringName) -> GString

pub fn tr_ex(&self, message: StringName) -> ExTr<'_>

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

pub fn tr_n_ex( &self, message: StringName, plural_message: StringName, n: i32 ) -> ExTrN<'_>

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 PhysicsServer3D

§

type Memory = MemManual

Defines the memory strategy of the static type.
§

type DynMemory = MemManual

Defines the memory strategy of the instance (at runtime).
§

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 PhysicsServer3D

§

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

Formats the value using the given formatter. Read more
§

impl Deref for PhysicsServer3D

§

type Target = Object

The resulting type after dereferencing.
§

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

Dereferences the value.
§

impl DerefMut for PhysicsServer3D

§

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

Mutably dereferences the value.
§

impl GodotClass for PhysicsServer3D

§

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
§

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

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

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

Returns whether Self inherits from U. Read more
§

impl Inherits<Object> for PhysicsServer3D

§

impl Inherits<PhysicsServer3D> for PhysicsServer3DExtension

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>,

§

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>,

§

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,