QiyuFrameSource Class

Description

在场景中将Qiyu的输出连接到EasyAR输入的自定义frame source。通过EasyAR Sense的自定义相机功能提供Qiyu支持。

这个frame source是一种运动跟踪设备,在 ARSession 中会输出运动数据。

为了使用这个frame source, Qiyu Unity XR SDK 是必需的。你需要根据官方文档配置Qiyu Unity XR SDK。

在可用性检查中, XROriginBasedFrameSource.XROrigin (或 CompatibleVROriginFrameSource.XRRig ) 是需要的,如果没有事先设置,会自动从场景物体中选择。


MonoBehaviour Messages

private void Update()

protected override void OnDestroy()

protected override void Awake()

protected virtual void OnApplicationPause(bool pause)

protected virtual void OnEnable()

protected virtual void OnDisable()


Fields

ControlSeeThrough

C#

public bool ControlSeeThrough

是否控制透视。如需在整个生命周期内关闭,确保在 ARSession .Start之前设置。


Properties

IsAvailable

C#

public override Optional<bool> IsAvailable { get; }

当前frame source是否可用。

如果数值等于null,需要调用 FrameSource.CheckAvailability ,数值将在 Coroutine 结束后可以访问。这个属性会在 ARComponentPicker 选择frame source的时候使用。

XRRig

C#

public UnityEngine.XR.Interaction.Toolkit.XRRig XRRig { get; set; }

XR Rig。

Origin

C#

public override GameObject Origin { get; }

ARSession 的原点,如果frame source可以输出运动跟踪数据。

每种运动跟踪frame source都有自己的方法来设置包含特定组件的原点物体。如果原点未设置,一些frame source会从场景中active的物体中自动选择可以使用的物体或创建一个新的物体。

XROrigin

C#

public Unity.XR.CoreUtils.XROrigin XROrigin { get; set; }

XR Origin。

AvailableCenterMode

C#

public override IReadOnlyList< ARSession.ARCenterMode > AvailableCenterMode { get; }

该frame source可以使用的中心模式。

ReceivedFrameCount

C#

public int ReceivedFrameCount { get; protected set; }

从设备获取到的帧计数。通常在debug中使用。如果这个数值停止增长,通常是硬件问题,某些设备(比如Nreal)重新插拔可能能解决。

Camera

C#

public virtual Camera Camera { get; set; }

在一个 ARSession 中被该frame source使用的 Camera

每种frame source都有自己的方法来检查camera是否可用,设置不可用的camera将会被拒绝。这个属性会在 ARComponentPicker 选择frame source时用来判断frame source是否可用。在这个过程中,如果数值没有设置,一些frame source会从场景中active的物体中自动选择可以使用的 Camera 。你可以在session start前设置可用的 Camera 。如果这个frame source被 ARSession 选用,这个数值将在session ready后无法修改。


Methods

CheckAvailability

C#

public override System.Collections.IEnumerator CheckAvailability()

FrameSource.IsAvailable 等于null时用于检查frame source是否可用的 Coroutine