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.

XRPose

繼承: RefCounted < Object

這個物件包含了追蹤物件姿勢相關的所有資料。

說明

XR 運作時通常可以識別裝置上的多個位置,例如空間追蹤的控制器。

XR 運作時會為每個姿勢都提供朝向、位置、線速度和角速度。這個物件包含某個姿勢的狀態。

教學

屬性

Vector3

angular_velocity

Vector3(0, 0, 0)

bool

has_tracking_data

false

Vector3

linear_velocity

Vector3(0, 0, 0)

StringName

name

&""

TrackingConfidence

tracking_confidence

0

Transform3D

transform

Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)

方法

Transform3D

get_adjusted_transform() const


列舉

enum TrackingConfidence: 🔗

TrackingConfidence XR_TRACKING_CONFIDENCE_NONE = 0

此姿勢沒有可用的追蹤資訊。

TrackingConfidence XR_TRACKING_CONFIDENCE_LOW = 1

追蹤資訊可能不準確或是估計而來的。例如,對於內向外型追蹤,這表示的是控制器可能被(部分)遮擋。

TrackingConfidence XR_TRACKING_CONFIDENCE_HIGH = 2

追蹤資訊被認為是準確且最新的。


屬性說明

Vector3 angular_velocity = Vector3(0, 0, 0) 🔗

  • void set_angular_velocity(value: Vector3)

  • Vector3 get_angular_velocity()

該姿勢的角速度。


bool has_tracking_data = false 🔗

  • void set_has_tracking_data(value: bool)

  • bool get_has_tracking_data()

如果為 true,則我們的追蹤資料是最新的。如果為 false,我們將不再接收新的追蹤資料,並且我們的狀態是最後一個有效狀態。


Vector3 linear_velocity = Vector3(0, 0, 0) 🔗

  • void set_linear_velocity(value: Vector3)

  • Vector3 get_linear_velocity()

該姿勢的線速度。


StringName name = &"" 🔗

姿勢的名稱。姿勢名稱通常派生自使用者設定的動作映射。Godot 也針對姿勢名稱給出了一些建議,希望 XRInterface 能夠實作:

-root 是根位置,通常用於沒有其他節點的被追蹤物體。

-aim 是控制器的頂端,方向朝外,常用於射線投射。

-grip 是使用者持握控制器的位置。

-skeleton 是在使用手部追蹤且 XR 執行時提供的動畫骨架時,手部網格的根位置。


TrackingConfidence tracking_confidence = 0 🔗

此姿勢的追蹤置信度,提供了有關此記錄的空間定位準確度的洞察力。


Transform3D transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) 🔗

該變換包含由 XR 運作時報告的原點和變換。


方法說明

Transform3D get_adjusted_transform() const 🔗

返回受到世界縮放和我們參考系影響的 transform。這是用於放置 XRNode3D 對象的變換。