ARAssembly Class

Description

AR组件的组装体。它实现了一种对所有EasyAR Sense组件的典型组装。继承这个类并重载部分可以实现更定制化的组装。

                                          +-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .-- .--+
                                          |                                                                                                                  .
                                          .                                 +---------------------------------------------------------------+                |
                                          |                                 |                                                               |                .
                                          .                                 |                       + -> ObjectTracker - - - - +            |                |
                                          |                                 v                       '                          '            |                .
                                          .                        +--> i2FAdapter --> fbFrameFork - - > ImageTracker - - - +  '            |                |
                                          |                        |                                                        '  '            |                .
                                          v                        |                                                        v  v            |                |
FrameSource --> (FrameRecorder) --> iFrameThrottler --> iFrameFork --> i2OAdapter ------------------------------------> oFrameJoin --> oFrameFork --> oFrameBuffer ~~> o
                                                                   '                                                        ^  ^
                                                                   '                                                        '  '
                                                                   + - - - - - - - - - - - - - - - - - > SparseSpatialMap - +  '
                                                                   '                                                           '
                                                                   + - - - - - - - - - - - - - - - - - > SurfaceTracker - - - -+
                                                                   '
                                                                   + - - - - - - - - - - - - - - - - - > DenseSpatialMap ~ ~ > o
                                                                   '
                                                                   + - - - - - - - - - - - - - - - - - > CloudRecognizer ~ ~ > o

Enums

public enum ARAssembly.AssembleMode

组装模式。


Fields

Camera

C#

public Camera Camera

现实环境中相机设备在虚拟世界中对应的 Camera ,其投影矩阵和位置都将于真实相机对应。

如果 ARSession.AssembleMode == ARAssembly.AssembleMode.Auto ,在组装时会设为 Camera .main。

CameraRoot

C#

public Transform CameraRoot

用于AR渲染的所有 Camera 的根节点的 Transform

如果 ARSession.AssembleMode == ARAssembly.AssembleMode.Auto ,在组装时会设为 ARAssembly.CameraTransform

RenderCameras

C#

public List< RenderCameraController > RenderCameras

RenderCameraController 的列表。

如果 ARSession.AssembleMode == ARAssembly.AssembleMode.Auto ,在组装时会从 ARSessionGameObject 的所有子节点中寻找并获取 RenderCameraController

FrameSource

C#

public FrameSource FrameSource

Frame数据源。

如果 ARSession.AssembleMode == ARAssembly.AssembleMode.Auto ,在组装时会从 ARSessionGameObject 的所有子节点中寻找并获取 FrameSource

FrameRecorder

C#

public FrameRecorder FrameRecorder

输入帧录制器。

如果 ARSession.AssembleMode == ARAssembly.AssembleMode.Auto ,在组装时会从 ARSessionGameObject 的所有子节点中寻找并获取 FrameSource

FrameFilters

C#

public List< FrameFilter > FrameFilters

FrameFilter 的列表。

如果 ARSession.AssembleMode == ARAssembly.AssembleMode.Auto ,在组装时会从 ARSessionGameObject 的所有子节点中寻找并获取 FrameFilter


Properties

Ready

C#

public bool Ready { get; }

组装体可以使用。

RequireWorldCenter

C#

public bool RequireWorldCenter { get; }

组装体是否需要 WorldRootController

OutputFrame

C#

public Optional< OutputFrame > OutputFrame { get; }

输出帧。

ExtraBufferCapacity

C#

public int ExtraBufferCapacity { get; set; }

额外需要的设备缓冲容量。如果需要保留OutputFrame/InputFrame或InputFrame中的image超过渲染的一帧,需要增加1。

Display

C#

public IDisplay Display { get; }

内部使用。Assembly使用的显示设备信息。


Methods

Dispose

C#

public virtual void Dispose()

销毁资源。

ResetBufferCapacity

C#

public void ResetBufferCapacity()

重置缓冲的容量。

GetBufferRequirement

C#

protected int GetBufferRequirement()

获取当前需要的缓冲容量。

GetFrameFilterCount

C#

protected int GetFrameFilterCount()

获取指定 FrameFilter 的数量。