ShapeCast3D в Godot
ShapeCast3D
в Godot — это узел, который позволяет бросать форму (shape) в 3D-пространстве и определять, пересекается ли она с другими объектами. Это более мощная версия RayCast3D
, которая вместо луча использует произвольную форму (например, сферу, куб или капсулу). Это полезно для обнаружения объектов, проверки свободного пространства или реализации сложных физических взаимодействий.
Основные функции:
-
Бросок формы
- Форма задаётся через свойство
shape
(например,SphereShape3D
,BoxShape3D
,CapsuleShape3D
). - Форма перемещается из начальной позиции узла в направлении
target_position
.
- Форма задаётся через свойство
-
Обнаружение столкновений
- Если форма пересекает объект,
ShapeCast3D
возвращает информацию о точке столкновения, нормали и объекте. - Свойство
enabled
включает/выключает проверку столкновений.
- Если форма пересекает объект,
-
Фильтрация объектов
- Используйте Collision Mask и Collision Layer, чтобы указать, с какими объектами может сталкиваться форма.
- Исключайте определённые объекты через
exclude_parent
илиexclude
(список объектов).
-
Динамическое обновление
- Форма автоматически обновляется каждый кадр, если
enabled = true
.
- Форма автоматически обновляется каждый кадр, если