<?xml version="1.0" encoding="UTF-8" ?> <class name="PhysicsShapeQueryParameters3D" inherits="Reference" version="4.0"> <brief_description> Parameters to be sent to a 3D shape physics query. </brief_description> <description> This class contains the shape and other parameters for 3D intersection/collision queries. See also [PhysicsShapeQueryResult3D]. </description> <tutorials> </tutorials> <methods> </methods> <members> <member name="collide_with_areas" type="bool" setter="set_collide_with_areas" getter="is_collide_with_areas_enabled" default="false"> If [code]true[/code], the query will take [Area3D]s into account. </member> <member name="collide_with_bodies" type="bool" setter="set_collide_with_bodies" getter="is_collide_with_bodies_enabled" default="true"> If [code]true[/code], the query will take [PhysicsBody3D]s into account. </member> <member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="2147483647"> The physics layer(s) the query will take into account (as a bitmask). See [url=https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information. </member> <member name="exclude" type="Array" setter="set_exclude" getter="get_exclude" default="[ ]"> The list of objects or object [RID]s that will be excluded from collisions. </member> <member name="margin" type="float" setter="set_margin" getter="get_margin" default="0.0"> The collision margin for the shape. </member> <member name="shape" type="Resource" setter="set_shape" getter="get_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 [member shape_rid]. </member> <member name="shape_rid" type="RID" setter="set_shape_rid" getter="get_shape_rid"> The queried shape's [RID] that will be used for collision/intersection queries. Use this over [member shape] if you want to optimize for performance using the Servers API: [codeblock] var shape_rid = PhysicsServer3D.shape_create(PhysicsServer3D.SHAPE_SPHERE) 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) [/codeblock] </member> <member name="transform" type="Transform" setter="set_transform" getter="get_transform" default="Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )"> The queried shape's transform matrix. </member> </members> <constants> </constants> </class>