Up to date

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

RayCast3D

Inherits: Node3D < Node < Object

A ray in 3D space, used to find the first CollisionObject3D it intersects.

Description

A raycast represents a ray from its origin to its target_position that finds the closest CollisionObject3D along its path, if it intersects any. This is useful for a lot of things, such as

RayCast3D can ignore some objects by adding them to an exception list, by making its detection reporting ignore Area3Ds (collide_with_areas) or PhysicsBody3Ds (collide_with_bodies), or by configuring physics layers.

RayCast3D calculates intersection every physics frame, and it holds the result until the next physics frame. For an immediate raycast, or if you want to configure a RayCast3D multiple times within the same physics frame, use force_raycast_update.

To sweep over a region of 3D space, you can approximate the region with multiple RayCast3Ds or use ShapeCast3D.

Tutorials

Properties

bool

collide_with_areas

false

bool

collide_with_bodies

true

int

collision_mask

1

Color

debug_shape_custom_color

Color(0, 0, 0, 1)

int

debug_shape_thickness

2

bool

enabled

true

bool

exclude_parent

true

bool

hit_back_faces

true

bool

hit_from_inside

false