Table of Contents

Class PhysicsDirectSpaceState3DExtension

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

Inheritance
PhysicsDirectSpaceState3DExtension

Remarks

This class extends PhysicsDirectSpaceState3D 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 PhysicsDirectSpaceState3D.

Methods

_cast_motion(RID, Transform3D, Vector3, float, int, bool, bool, float*, float*, PhysicsServer3DExtensionShapeRestInfo*)

Qualifiers: virtual

bool _cast_motion(RID shape_rid, Transform3D transform, Vector3 motion, float margin, int collision_mask, bool collide_with_bodies, bool collide_with_areas, float* closest_safe, float* closest_unsafe, PhysicsServer3DExtensionShapeRestInfo* info)

Parameters

shape_rid RID
transform Transform3D
motion Vector3
margin float
collision_mask int
collide_with_bodies bool
collide_with_areas bool
closest_safe float*
closest_unsafe float*
info PhysicsServer3DExtensionShapeRestInfo*

_collide_shape(RID, Transform3D, Vector3, float, int, bool, bool, void*, int, int32_t*)

Qualifiers: virtual

bool _collide_shape(RID shape_rid, Transform3D transform, Vector3 motion, float margin, int collision_mask, bool collide_with_bodies, bool collide_with_areas, void* results, int max_results, int32_t* result_count)

Parameters

shape_rid RID
transform Transform3D
motion Vector3
margin float
collision_mask int
collide_with_bodies bool
collide_with_areas bool
results void*
max_results int
result_count int32_t*

_get_closest_point_to_object_volume(RID, Vector3)

Qualifiers: virtualconst

Vector3 _get_closest_point_to_object_volume(RID object, Vector3 point)

Parameters

object RID
point Vector3

_intersect_point(Vector3, int, bool, bool, PhysicsServer3DExtensionShapeResult*, int)

Qualifiers: virtual

int _intersect_point(Vector3 position, int collision_mask, bool collide_with_bodies, bool collide_with_areas, PhysicsServer3DExtensionShapeResult* results, int max_results)

Parameters

position Vector3
collision_mask int
collide_with_bodies bool
collide_with_areas bool
results PhysicsServer3DExtensionShapeResult*
max_results int

_intersect_ray(Vector3, Vector3, int, bool, bool, bool, bool, bool, PhysicsServer3DExtensionRayResult*)

Qualifiers: virtual

bool _intersect_ray(Vector3 from, Vector3 to, int collision_mask, bool collide_with_bodies, bool collide_with_areas, bool hit_from_inside, bool hit_back_faces, bool pick_ray, PhysicsServer3DExtensionRayResult* result)

Parameters

from Vector3
to Vector3
collision_mask int
collide_with_bodies bool
collide_with_areas bool
hit_from_inside bool
hit_back_faces bool
pick_ray bool
result PhysicsServer3DExtensionRayResult*

_intersect_shape(RID, Transform3D, Vector3, float, int, bool, bool, PhysicsServer3DExtensionShapeResult*, int)

Qualifiers: virtual

int _intersect_shape(RID shape_rid, Transform3D transform, Vector3 motion, float margin, int collision_mask, bool collide_with_bodies, bool collide_with_areas, PhysicsServer3DExtensionShapeResult* result_count, int max_results)

Parameters

shape_rid RID
transform Transform3D
motion Vector3
margin float
collision_mask int
collide_with_bodies bool
collide_with_areas bool
result_count PhysicsServer3DExtensionShapeResult*
max_results int

_rest_info(RID, Transform3D, Vector3, float, int, bool, bool, PhysicsServer3DExtensionShapeRestInfo*)

Qualifiers: virtual

bool _rest_info(RID shape_rid, Transform3D transform, Vector3 motion, float margin, int collision_mask, bool collide_with_bodies, bool collide_with_areas, PhysicsServer3DExtensionShapeRestInfo* rest_info)

Parameters

shape_rid RID
transform Transform3D
motion Vector3
margin float
collision_mask int
collide_with_bodies bool
collide_with_areas bool
rest_info PhysicsServer3DExtensionShapeRestInfo*

is_body_excluded_from_query(RID)

Qualifiers: const

bool is_body_excluded_from_query(RID body)

Parameters

body RID