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.
Checking the stable version of the documentation...
XRPositionalTracker
Успадковує: XRTracker < RefCounted < Object
Успадковано від: OpenXRSpatialEntityTracker, XRBodyTracker, XRControllerTracker, XRHandTracker
Відстежений об'єкт.
Опис
Приклад цього об'єкта являє собою пристрій, який відстежується, такі як контролер або якірна точка. HMDs не представлені тут, як вони обробляються внутрішньо.
Як контролери перетворюються і XRInterface виявляє їх, екземпляри цього об'єкта автоматично додаються до цього списку активних елементів відстеження, доступних через XRServer.
XRNode3D і XRAnchor3D обидва споживають об'єкти цього типу і повинні бути використані в вашому проекті. Посадові трекери лише під об'єктами, які роблять цю роботу. Цей інтерфейс GDExtension може взаємодіяти з ними.
Посібники
Властивості
|
||
|
Методи
get_input(name: StringName) const |
|
get_pose(name: StringName) const |
|
has_pose(name: StringName) const |
|
void |
invalidate_pose(name: StringName) |
void |
set_input(name: StringName, value: Variant) |
void |
set_pose(name: StringName, transform: Transform3D, linear_velocity: Vector3, angular_velocity: Vector3, tracking_confidence: TrackingConfidence) |
Сигнали
button_pressed(action_name: String) 🔗
При натисканні кнопки на цей трекер. Зауважте, що багато XR runtimes дозволяють іншим введенням малювати кнопки.
button_released(action_name: String) 🔗
Увімкніть кнопку на цьому трекері.
input_float_changed(action_name: String, value: float) 🔗
Випробувано при запуску або аналогічному вході на цей трекер змінює значення.
input_vector2_changed(action_name: String, vector: Vector2) 🔗
Увімкніть, коли пальчик або пальчик на цьому трекері рухається.
Увімкнено, коли стан пози відстежується цими змінами трекера.
pose_lost_tracking(pose: XRPose) 🔗
Увімкнено, коли за допомогою цього трекера припиняється отримання оновлених даних відстеження.
profile_changed(role: String) 🔗
Випробувано в профілі наших трекерів.
Переліки
enum TrackerHand: 🔗
TrackerHand TRACKER_HAND_UNKNOWN = 0
Зручність в цьому трекері не існує.
TrackerHand TRACKER_HAND_LEFT = 1
Цей трекер є лівою рукою контролера.
TrackerHand TRACKER_HAND_RIGHT = 2
Цей трекер є правою рукою контролера.
TrackerHand TRACKER_HAND_MAX = 3
Представляє розмір TrackerHand enum.
Описи властивостей
TrackerHand hand = 0 🔗
void set_tracker_hand(value: TrackerHand)
TrackerHand get_tracker_hand()
Дефіни, які ручать цей трекер відноситься до.
Профіль, пов'язаний з цим трекером, залежним інтерфейсом, але буде вказувати тип контролера, який слідує.
Описи методів
Variant get_input(name: StringName) const 🔗
Застаріло: Use through XRControllerTracker.
Повертає введення для цього трекера. Це може повернути boolean, float або Vector2 значення залежно від того, чи є вхід кнопка, тригер або thumbpad.
XRPose get_pose(name: StringName) const 🔗
Повертає поточний XRPose державний об'єкт для межи name поз.
bool has_pose(name: StringName) const 🔗
Повертає true, якщо трекер доступний і наразі відстежує пов’язану позу name.
void invalidate_pose(name: StringName) 🔗
Звертаємо вашу увагу на те, що ця поза не є недійсною, ми не розуміємо останнього повідомлення, але це дозволяє користувачам приймати рішення, якщо трекери повинні бути приховані, якщо ми втратимо відстеження або просто залишатися на своєму останньому відомому положенні.
void set_input(name: StringName, value: Variant) 🔗
Застаріло: Use through XRControllerTracker.
Змінює значення для заданого вхідного значення. Цей метод викликається реалізацією XRInterface і не повинен використовуватися безпосередньо.
void set_pose(name: StringName, transform: Transform3D, linear_velocity: Vector3, angular_velocity: Vector3, tracking_confidence: TrackingConfidence) 🔗
Встановлює перетворення, лінійну швидкість, кутову швидкість та впевненість відстеження для заданої пози. Цей метод викликається реалізацією XRInterface і не повинен використовуватися безпосередньо.