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

Hérite de : RefCounted < Object

Fournit des paramètres pour PhysicsDirectSpaceState2D.intersect_ray().

Description

En changeant diverses propriétés de cet objet, comme la position du rayon, vous pouvez configurer les paramètres pour PhysicsDirectSpaceState2D.intersect_ray().

Propriétés

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)

Méthodes

PhysicsRayQueryParameters2D

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


Descriptions des propriétés

bool collide_with_areas = false 🔗

  • void set_collide_with_areas(value: bool)

  • bool is_collide_with_areas_enabled()

Si true, la requête prendra la Area2D en compte.


bool collide_with_bodies = true 🔗

  • void set_collide_with_bodies(value: bool)

  • bool is_collide_with_bodies_enabled()

Si true, la requête prendra la PhysicsBody2D en compte.


int collision_mask = 4294967295 🔗

  • void set_collision_mask(value: int)

  • int get_collision_mask()

Les couches de physique que la requête détectera (en tant que masque de bits). Par défaut, toutes les couches de collision sont détectées. Voir Niveaux et masques de collisions dans la documentation pour plus d'informations.


Array[RID] exclude = [] 🔗

La liste des RIDs des objets qui seront exclus des collisions. Utilisez CollisionObject2D.get_rid() pour obtenir le RID associé à un nœud dérivé de CollisionObject2D.

Note : Le tableau renvoyé est copié et tout changement apporté à celui-ci ne mettra pas à jour la valeur de la propriété originale. Pour mettre à jour la valeur, vous devez modifier le tableau renvoyé, puis l'affecter à nouveau à la propriété.


Vector2 from = Vector2(0, 0) 🔗

Le point de départ du rayon questionné, dans les coordonnées globales.


bool hit_from_inside = false 🔗

  • void set_hit_from_inside(value: bool)

  • bool is_hit_from_inside_enabled()

Si true, la requête détectera un choc lorsqu'elle démarre à l'intérieur d'une forme. Dans ce cas, la normale de collision sera Vector2(0, 0). N'affecte pas les formes de polygones concaves.


Vector2 to = Vector2(0, 0) 🔗

Le point de fin du rayon questionné, dans les coordonnées globales.


Descriptions des méthodes

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

Renvoie un nouvel objet préconfiguré PhysicsRayQueryParameters2D. Utilisez-le pour créer rapidement des paramètres de requête en utilisant les options les plus courantes.

var requete = PhysiqueRayQueryParameters2D.create(position_globale, position_globale + Vector2(0, 100)))
var collision = get_world_2d().direct_space_state.intersect_ray(requete)