Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

PhysicsRayQueryParameters3D

Inherits: RefCounted < Object

Provides parameters for PhysicsDirectSpaceState3D.intersect_ray.

Description

By changing various properties of this object, such as the ray position, you can configure the parameters for PhysicsDirectSpaceState3D.intersect_ray.

Properties

bool

collide_with_areas

false

bool

collide_with_bodies

true

int

collision_mask

4294967295

RID[]

exclude

[]

Vector3

from

Vector3(0, 0, 0)

bool

hit_back_faces

true

bool

hit_from_inside

false

Vector3

to

Vector3(0, 0, 0)

Methods

PhysicsRayQueryParameters3D

create ( Vector3 from, Vector3 to, int collision_mask=4294967295, RID[] exclude=[] ) static


Property Descriptions

bool collide_with_areas = false

  • void set_collide_with_areas ( bool value )

  • bool is_collide_with_areas_enabled ( )

If true, the query will take Area3Ds into account.


bool collide_with_bodies = true

  • void set_collide_with_bodies ( bool value )

  • bool is_collide_with_bodies_enabled ( )

If true, the query will take PhysicsBody3Ds into account.


int collision_mask = 4294967295

  • void set_collision_mask ( int value )

  • int get_collision_mask ( )

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 = []

  • void set_exclude ( RID[] value )

  • RID[] get_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.


Vector3 from = Vector3(0, 0, 0)

The starting point of the ray being queried for, in global coordinates.


bool hit_back_faces = true

  • void set_hit_back_faces ( bool value )

  • bool is_hit_back_faces_enabled ( )

If true, the query will hit back faces with concave polygon shapes with back face enabled or heightmap shapes.


bool hit_from_inside = false

  • void set_hit_from_inside ( bool value )

  • bool is_hit_from_inside_enabled ( )

If true, the query will detect a hit when starting inside shapes. In this case the collision normal will be Vector3(0, 0, 0). Does not affect concave polygon shapes or heightmap shapes.


Vector3 to = Vector3(0, 0, 0)

The ending point of the ray being queried for, in global coordinates.


Method Descriptions

PhysicsRayQueryParameters3D create ( Vector3 from, Vector3 to, int collision_mask=4294967295, RID[] exclude=[] ) static

Returns a new, pre-configured PhysicsRayQueryParameters3D object. Use it to quickly create query parameters using the most common options.

var query = PhysicsRayQueryParameters3D.create(position, position + Vector3(0, -10, 0))
var collision = get_world_3d().direct_space_state.intersect_ray(query)