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.

PhysicsRayQueryParameters3D

Hérite de : RefCounted < Object

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

Description

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

Propriétés

bool

collide_with_areas

false

bool

collide_with_bodies

true

int

collision_mask

4294967295

Array[RID]

exclude

[]

Vector3

from

Vector3(0, 0, 0)

bool

hit_back_faces

true

bool

hit_from_inside

false

Vector3

to

Vector3(0, 0, 0)

Méthodes

PhysicsRayQueryParameters3D

create(from: Vector3, to: Vector3, 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 les Area3Ds 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 les PhysicsBody3Ds 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 CollisionObject3D.get_rid() pour obtenir le RID associé à un nœud dérivé de CollisionObject3D.

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é.


Vector3 from = Vector3(0, 0, 0) 🔗

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


bool hit_back_faces = true 🔗

  • void set_hit_back_faces(value: bool)

  • bool is_hit_back_faces_enabled()

Si true, la requête va toucher les faces arrières des formes de polygone concave avec les faces arrières activées ou des formes de heightmap.


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 une collision lors du démarrage à l'intérieur d'une forme. Dans ce cas, la normale de collision sera Vector3(0, 0, 0). N'affecte pas les formes de polygones concaves ou les formes de heightmap.


Vector3 to = Vector3(0, 0, 0) 🔗

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


Descriptions des méthodes

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

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

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