Class RokidFrameSource
- 命名空間
- easyar
- 組件
- EasyAR.Sense.Ext.Rokid.dll
在場景中將Rokid的輸出連接到EasyAR輸入的自訂frame source。透過EasyAR Sense的自訂相機功能提供Rokid支援。
這個frame source是一種運動追蹤裝置,在ARSession中會輸出運動數據。
為了使用這個frame source, ``Rokid Unity OpenXR Plugin (com.rokid.openxr)`` 是必需的。你需要根據官方文件配置Rokid Unity OpenXR Plugin。
public class RokidFrameSource : ExternalDeviceMotionFrameSource
- 繼承
-
RokidFrameSource
- 繼承成員
屬性
CameraCandidate
public Camera CameraCandidate { get; set; }
CameraFrameStarted
僅當建立一個新的frame source時提供。它會在ARSession的整個生命週期內被訪問。
相機幀是否開始輸入。
protected override bool CameraFrameStarted { get; }
DeviceCameras
僅當建立一個新的frame source時提供。它會在CameraFrameStarted為true時被訪問。
提供相機幀數據的裝置相機。如果相機幀數據由多個相機提供,清單中需要包含所有相機。
確保在CameraFrameStarted為true時數值正確。
protected override List<FrameSourceCamera> DeviceCameras { get; }
Display
僅當建立一個新的frame source時提供。它僅會在Assemble()過程中被訪問。
提供顯示系統資訊。你可以使用DefaultSystemDisplay或DefaultHMDDisplay來取得預設的顯示資訊。
protected override IDisplay Display { get; }
IsAvailable
僅當建立一個新的frame source時提供。它僅會在Assemble()過程中被訪問。
當前frame source是否可用。
如果數值等於null,CheckAvailability()會被呼叫,數值將在Coroutine結束後取得。
protected override Optional<bool> IsAvailable { get; }
IsHMD
僅當建立一個新的frame source時提供。它僅會在Assemble()過程中被訪問。
當前frame source是否是頭顯。如果是頭顯,診斷資訊將顯示在相機前的3D板子上。
部分frame filter在裝置上執行會有不同。
protected override bool IsHMD { get; }
OriginType
裝置原點類型。
protected override ExternalDeviceFrameSource.DeviceOriginType OriginType { get; }
方法
Awake()
protected override void Awake()
LateUpdate()
protected virtual void LateUpdate()
OnApplicationPause(bool)
protected override void OnApplicationPause(bool pause)
參數
pause
OnDestroy()
protected override void OnDestroy()
OnSessionStart(ARSession)
僅當建立一個新的frame source時提供。它僅會在StartSession()過程中被訪問。
處理session啟動,如果這個frame source已經組裝進Assembly。這個方法設計上是用來做延遲初始化的,你可以在這個方法中做AR獨有的初始化工作。
protected override void OnSessionStart(ARSession session)
參數
session
OnSessionStop()
僅當建立一個新的frame source時提供。它會在StopSession(bool)或其它session停止/損壞過程中被訪問。
處理session停止,如果這個frame source已經組裝進Assembly。你可以使用這個方法銷毀StartSession()以及session執行中建立的資源並恢復內部狀態。在session銷毀之前這個方法會被保證呼叫。如果frame source在sessino之前銷毀,它將不會被呼叫,且session將損壞。
protected override void OnSessionStop()