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

Eredita: RefCounted < Object

Fornisce parametri per PhysicsDirectSpaceState2D.intersect_ray().

Descrizione

Modificando varie proprietà di questo oggetto, come la posizione del raggio, è possibile configurare i parametri per PhysicsDirectSpaceState2D.intersect_ray().

Proprietà

bool

collide_with_areas

false

bool

collide_with_bodies

true

int

collision_mask

4294967295

Array[RID]

exclude

[]

Vector2

from

Vector2(0, 0)

bool

hit_from_inside

false

Vector2

to

Vector2(0, 0)

Metodi

PhysicsRayQueryParameters2D

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


Descrizioni delle proprietà

bool collide_with_areas = false 🔗

  • void set_collide_with_areas(value: bool)

  • bool is_collide_with_areas_enabled()

Se true, l'interrogazione prenderà i nodi Area2D in considerazione.


bool collide_with_bodies = true 🔗

  • void set_collide_with_bodies(value: bool)

  • bool is_collide_with_bodies_enabled()

Se true, l'interrogazione prenderà i nodi PhysicsBody2D in considerazione.


int collision_mask = 4294967295 🔗

  • void set_collision_mask(value: int)

  • int get_collision_mask()

Gli strati di fisica che l'interrogazione rileverà (come una maschera di bit). Per impostazione predefinita, sono rilevati tutti gli strati di collisione. Consulta Strati di collisione e maschere nella documentazione per ulteriori informazioni.


Array[RID] exclude = [] 🔗

La lista degli RID degli oggetti che saranno esclusi dalle collisioni. Usa CollisionObject2D.get_rid() per ottenere il RID associato a un nodo derivato da CollisionObject2D.

Nota: L'array restituito è copiato e qualsiasi modifica non aggiornerà il valore della proprietà originale. Per aggiornare il valore devi modificare l'array restituito e quindi assegnarlo di nuovo alla proprietà.


Vector2 from = Vector2(0, 0) 🔗

Il punto iniziale del raggio da interrogare, in coordinate globali.


bool hit_from_inside = false 🔗

  • void set_hit_from_inside(value: bool)

  • bool is_hit_from_inside_enabled()

Se true, l'interrogazione rileverà un riscontro se iniziata all'interno di una forma. In questo caso la normale di collisione sarà Vector2(0, 0). Non influisce sulle forme poligonali concave.


Vector2 to = Vector2(0, 0) 🔗

Il punto finale del raggio da interrogare, in coordinate globali.


Descrizioni dei metodi

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

Restituisce un nuovo oggetto PhysicsRayQueryParameters2D preconfigurato. Utilizzalo per creare rapidamente parametri di interrogazione utilizzando le opzioni più comuni.

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