Table of Contents

Class RokidFrameSource

Namespace
easyar
Assembly
EasyAR.Sense.Ext.Rokid.dll

Connect Rokid's output to the custom frame source of EasyAR input in the scene. Provide Rokid support through the custom camera feature of EasyAR Sense.

This frame source is a motion tracking device that outputs motion data in ARSession.

To use this frame source, the Rokid Unity OpenXR Plugin (com.rokid.openxr) is required. You need to configure the Rokid Unity OpenXR Plugin according to the official documentation.

public class RokidFrameSource : ExternalDeviceMotionFrameSource
Inheritance
RokidFrameSource
Inherited Members

Properties

CameraCandidate

public Camera CameraCandidate { get; set; }

Property Value

CameraFrameStarted

Provided only when creating a new frame source. It will be accessed throughout the entire lifecycle of ARSession.

Whether the camera frame has started inputting.

protected override bool CameraFrameStarted { get; }

Property Value

DeviceCameras

Provided only when creating a new frame source. It will be accessed when CameraFrameStarted is true.

Device cameras that provide camera frame data. If camera frame data is provided by multiple cameras, all cameras need to be included in the list.

protected override List<FrameSourceCamera> DeviceCameras { get; }

Property Value

Display

Provided only when creating a new frame source. It will only be accessed during the Assemble() process.

Provide display system information. You can use DefaultSystemDisplay or DefaultHMDDisplay to get the default display information.

protected override IDisplay Display { get; }

Property Value

IsAvailable

Provided only when creating a new frame source. It will only be accessed during the Assemble() process.

Whether the current frame source is available.

If the value is null, CheckAvailability() will be called, and the value will be obtained after Coroutine ends.

protected override Optional<bool> IsAvailable { get; }

Property Value

IsHMD

Provided only when creating a new frame source. It will only be accessed during the Assemble() process.

Whether the current frame source is a head-mounted display (HMD). If it is an HMD, diagnostic information will be displayed on the 3D board in front of the camera.

Some frame filters will behave differently on devices.

protected override bool IsHMD { get; }

Property Value

OriginType

Device origin type.

protected override ExternalDeviceFrameSource.DeviceOriginType OriginType { get; }

Property Value

Methods

Awake()

protected override void Awake()

LateUpdate()

protected virtual void LateUpdate()

OnApplicationPause(bool)

protected override void OnApplicationPause(bool pause)

Parameters

pause

OnDestroy()

protected override void OnDestroy()

OnSessionStart(ARSession)

Provided only when creating a new frame source. It will only be accessed during the StartSession() process.

Handle session start-up if this frame source has been assembled into Assembly. This method is designed for deferred initialization, and you can perform AR-specific initialization work in this method.

protected override void OnSessionStart(ARSession session)

Parameters

session

OnSessionStop()

Provided only when creating a new frame source. It will be accessed during StopSession(bool) or other session stop/damage processes.

Handle session stop if this frame source has been assembled into Assembly. You can use this method to destroy StartSession() and the resources created during session operation, and restore the internal state. This method is guaranteed to be called before the session is destroyed. If the frame source is destroyed before the session, it will not be called and the session will be corrupted.

protected override void OnSessionStop()