Parameters to be sent to a 2D shape physics query. This class contains the shape and other parameters for [PhysicsDirectSpaceState2D] intersection/collision queries. If [code]true[/code], the query will take [Area2D]s into account. If [code]true[/code], the query will take [PhysicsBody2D]s into account. The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. 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. The list of objects or object [RID]s that will be excluded from collisions. The collision margin for the shape. The motion of the shape being queried for. The [Shape2D] 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]. 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: [codeblocks] [gdscript] var shape_rid = PhysicsServer2D.circle_shape_create() var radius = 64 PhysicsServer2D.shape_set_data(shape_rid, radius) var params = PhysicsShapeQueryParameters2D.new() params.shape_rid = shape_rid # Execute physics queries here... # Release the shape when done with physics queries. PhysicsServer2D.free_rid(shape_rid) [/gdscript] [csharp] RID shapeRid = PhysicsServer2D.CircleShapeCreate(); int radius = 64; PhysicsServer2D.ShapeSetData(shapeRid, radius); var params = new PhysicsShapeQueryParameters2D(); params.ShapeRid = shapeRid; // Execute physics queries here... // Release the shape when done with physics queries. PhysicsServer2D.FreeRid(shapeRid); [/csharp] [/codeblocks] The queried shape's transform matrix.