Table of Contents

Class ARFoundationFrameSource

名前空間
easyar
アセンブリ
EasyAR.Sense.dll

A custom frame source that connects AR Foundation output in the scene to EasyAR input. It provides AR Foundation support through the custom camera feature of EasyAR Sense.

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

To use this frame source, ``AR Foundation`` is required. You need to configure AR Foundation according to the official documentation.

public abstract class ARFoundationFrameSource : FrameSource
継承
ARFoundationFrameSource
Derived

プロパティ

AvailableCenterMode

新しい frame source を作成するときにのみ提供されます. It is accessed only during Assemble().

All center modes that can be used.

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

Camera

新しい frame source を作成するときにのみ提供されます. It is accessed only during Assemble().

On desktop devices or phones, this camera represents the Camera in the virtual world corresponding to the camera device in the real environment. Its projection matrix and position correspond to the real camera and are controlled by EasyAR. On headsets, this camera is used only to display diagnostic text in front of the eyes; it is not used for image rendering, and the camera is not controlled by EasyAR.

protected override Camera Camera { get; }

CameraFrameStarted

新しい frame source を作成するときにのみ提供されます. It is accessed throughout the lifecycle of ARSession.

Whether camera frame input has started.

protected override bool CameraFrameStarted { get; }

DeviceCameras

新しい frame source を作成するときにのみ提供されます. It is accessed when CameraFrameStarted is true.

Device cameras that provide camera frame data. If camera frame data is provided by multiple cameras, the list must contain all cameras.

Ensure that the value is correct when CameraFrameStarted is true.

protected override List<FrameSourceCamera> DeviceCameras { get; }

Display

新しい frame source を作成するときにのみ提供されます. It is accessed only during Assemble().

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

protected override IDisplay Display { get; }

IsAvailable

新しい frame source を作成するときにのみ提供されます. It is accessed only during Assemble().

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; }

IsCameraUnderControl

新しい frame source を作成するときにのみ提供されます. It is accessed only during Assemble().

When the value is true, session updates the camera transform and renders the camera image.

When creating a headset extension, it should be false. You should fully control the 3D camera in the scene. You should handle camera rendering, especially in VST mode.

protected override bool IsCameraUnderControl { get; }

IsHMD

新しい frame source を作成するときにのみ提供されます. It is accessed only during Assemble().

Whether the current frame source is a headset. If it is a headset, diagnostic information will be displayed on a 3D board in front of the camera.

Some frame filters behave differently when running on device.

protected override bool IsHMD { get; }

enabled

開始/停止します sending image stream data to EasyAR while ARSession is running. After session starts, sending starts only when MonoBehaviour.enabled is true.

public bool enabled { get; set; }

メソッド

CheckAvailability()

新しい frame source を作成するときにのみ提供されます. It is accessed only during Assemble().

The Coroutine used to check whether the frame source is available when IsAvailable is null.

protected override IEnumerator CheckAvailability()

OnSessionStart(ARSession)

新しい frame source を作成するときにのみ提供されます. It is accessed only during StartSession().

処理します session startup if this frame source has been assembled into Assembly. This method is designed for lazy initialization; you can perform AR-specific initialization work in this method.

protected override void OnSessionStart(ARSession session)

パラメーター

session

OnSessionStop()

新しい frame source を作成するときにのみ提供されます. It is accessed during StopSession(bool) or other session stop/damage processes.

処理します session stop if this frame source has been assembled into Assembly. You can use this method to destroy resources created by StartSession() and during session running, and restore internal state. This method is guaranteed to be called before session destruction. If the frame source is destroyed before the session, it will not be called and the session will be damaged.

protected override void OnSessionStop()