Class reference

PhysicsShapeQueryParameters3D

Inherits RefCounted

Provides parameters for PhysicsDirectSpaceState3D's methods.

Description

By changing various properties of this object, such as the shape, you can configure the parameters for PhysicsDirectSpaceState3D's methods.

Properties

bool collide_with_areas = false

If true, the query will take Area3Ds into account.

bool collide_with_bodies = true

If true, the query will take PhysicsBody3Ds into account.

int collision_mask = 4294967295

The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. See Collision layers and masks in the documentation for more information.

RID[] exclude = []

The list of object RIDs that will be excluded from collisions. Use CollisionObject3D.get_rid() to get the RID associated with a CollisionObject3D-derived node. Note: The returned array is copied and any changes to it will not update the original property value. To update the value you need to modify the returned array, and then assign it to the property again.

float margin = 0.0

The collision margin for the shape.

Vector3 motion = Vector3(0, 0, 0)

The motion of the shape being queried for.

Resource shape

The Shape3D that will be used for collision/intersection queries. This stores the actual reference which avoids the shape to be released while being used for queries, so always prefer using this over shape_rid.

RID shape_rid = RID()

The queried shape's RID that will be used for collision/intersection queries. Use this over shape if you want to optimize for performance using the Servers API:

			var shape_rid = PhysicsServer3D.sphere_shape_create()
			var radius = 2.0
			PhysicsServer3D.shape_set_data(shape_rid, radius)

			var params = PhysicsShapeQueryParameters3D.new()
			params.shape_rid = shape_rid

			# Execute physics queries here...

			# Release the shape when done with physics queries.
			PhysicsServer3D.free_rid(shape_rid)
			
			RID shapeRid = PhysicsServer3D.SphereShapeCreate();
			float radius = 2.0f;
			PhysicsServer3D.ShapeSetData(shapeRid, radius);

			var params = new PhysicsShapeQueryParameters3D();
			params.ShapeRid = shapeRid;

			// Execute physics queries here...

			// Release the shape when done with physics queries.
			PhysicsServer3D.FreeRid(shapeRid);
			

Transform3D transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)

The queried shape's transform matrix.

Source revision 4f5b14abade2
Connection interrupted. Reload×

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.