Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

PhysicsRayQueryParameters2D

Inherits: RefCounted < Object

Provides parameters for PhysicsDirectSpaceState2D.intersect_ray.

描述

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

属性

bool

collide_with_areas

false

bool

collide_with_bodies

true

int

collision_mask

4294967295

RID[]

exclude

[]

Vector2

from

Vector2(0, 0)

bool

hit_from_inside

false

Vector2

to

Vector2(0, 0)

Methods

PhysicsRayQueryParameters2D

create ( Vector2 from, Vector2 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 Area2Ds 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 PhysicsBody2Ds 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 CollisionObject2D.get_rid to get the RID associated with a CollisionObject2D-derived node.


Vector2 from = Vector2(0, 0)

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


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 Vector2(0, 0). Does not affect concave polygon shapes.


Vector2 to = Vector2(0, 0)

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


Method Descriptions

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

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

var query = PhysicsRayQueryParameters2D.create(global_position, global_position + Vector2(0, 100))
var collision = get_world_2d().direct_space_state.intersect_ray(query)