XRPositionalTracker

Успадковує: XRTracker < RefCounted < Object

Успадковано від: XRBodyTracker, XRControllerTracker, XRHandTracker

Відстежений об'єкт.

Опис

Приклад цього об'єкта являє собою пристрій, який відстежується, такі як контролер або якірна точка. HMDs не представлені тут, як вони обробляються внутрішньо.

Як контролери перетворюються і XRInterface виявляє їх, екземпляри цього об'єкта автоматично додаються до цього списку активних елементів відстеження, доступних через XRServer.

XRNode3D і XRAnchor3D обидва споживають об'єкти цього типу і повинні бути використані в вашому проекті. Посадові трекери лише під об'єктами, які роблять цю роботу. Цей інтерфейс GDExtension може взаємодіяти з ними.

Посібники

Властивості

TrackerHand

hand

0

String

profile

""

Методи

Variant

get_input(name: StringName) const

XRPose

get_pose(name: StringName) const

bool

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(name: String) 🔗

При натисканні кнопки на цей трекер. Зауважте, що багато XR runtimes дозволяють іншим введенням малювати кнопки.


button_released(name: String) 🔗

Увімкніть кнопку на цьому трекері.


input_float_changed(name: String, value: float) 🔗

Випробувано при запуску або аналогічному вході на цей трекер змінює значення.


input_vector2_changed(name: String, vector: Vector2) 🔗

Увімкніть, коли пальчик або пальчик на цьому трекері рухається.


pose_changed(pose: XRPose) 🔗

Увімкнено, коли стан пози відстежується цими змінами трекера.


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 🔗

Дефіни, які ручать цей трекер відноситься до.


String profile = "" 🔗

  • void set_tracker_profile(value: String)

  • String get_tracker_profile()

Профіль, пов'язаний з цим трекером, залежним інтерфейсом, але буде вказувати тип контролера, який слідує.


Описи методів

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 і не повинен використовуватися безпосередньо.