內容目录

上一个主题

ARCamera Prefab

下一个主题

ARScene Prefab

ARCameraBaseBehaviour Class

Description

ARCameraBaseBehaviour是在AR场景中控制ARCamera的component。

带有ARCameraBaseBehaviour的物体是RenderCamera的父节点,ARCamera和跟踪到的Target之间的相对位置 (transform)由EasyAR控制。

通过在FrameUpdate事件中过滤Target pose(从Frame中获取的TargetInstance的Rotation和Position)可以降低target抖动。

可以通过关闭 RenderReality 来禁止 camera 背景显示。

Public Types

enum CenterMode{FirstTarget, Camera, SpecificTarget}

Public Fields

CenterMode WorldCenter
bool RenderReality
TargetAbstractBehaviour CenterTarget

Public Functions

void Bind(DeviceAbstractBehaviour behaviour)

Public Events

event Action<ARCameraBaseBehaviour, Frame> FrameUpdate
event Action<ARCameraBaseBehaviour, Texture2D> PlaneTextureCreated
event Action<ARCameraBaseBehaviour, TargetAbstractBehaviour, Target> TargetFound
event Action<ARCameraBaseBehaviour, TargetAbstractBehaviour, Target> TargetLost
event Action<ARCameraBaseBehaviour, string> TextMessage

Overwritten MonoBahaviour Functions

protected virtual void Awake()
protected virtual void OnDestroy()
protected virtual void Start()
protected virtual void Update()

enum CenterMode

Constant Value Description
FirstTarget 0

AR场景是以第一个跟踪到的target为中心的。 你可以移动或旋转target, ARCamera会跟着动。在这个模式下 你将无法手动控制ARCamera的transform。 Target和ARCamera的相对位置关系由EasyAR控制。

../../../_images/image115.png ../../../_images/image122.png
Camera 1

AR场景是以Camera为中心的。 你可以移动或旋转ARCamera,Target会跟着动。 在这个模式下你将无法手动控制Target的transform。 Target和ARCamera的相对位置关系由EasyAR控制。

../../../_images/image133.png ../../../_images/image143.png
SpecificTarget 2 AR场景是以CenterTarget所指定的target为中心的。 如果这个指定的target没有被跟踪, 将会回退到Camera中心模式。 Target和ARCamera的相对位置关系由EasyAR控制。

CenterMode WorldCenter

AR世界中心。这个可以实时调整。更多信息参见CenterMode。

bool RenderReality

是否显示reality plane的标记。如果设为false,camera图像将不会显示。

TargetAbstractBehaviour CenterTarget

在世界中心设为target的时候作为中心的target。

void Bind(DeviceAbstractBehaviour behaviour)

Binds DeviceAbstractBehaviour。这个方法在构建AR场景的过程中使用。在AR功能可以工作之前,ARCameraBa seBehaviour必须被bind到DeviceAbstractBehaviour上面。

event Action<ARCameraBaseBehaviour, Frame> FrameUpdate

frame更新事件。你可以得到一帧Frame以及Frame所包含的数据,比如跟踪到的target或当前使用的图像。frame中的图像与Rea lityPlane上显示的图像是同步的。详见 Frame

event Action<ARCameraBaseBehaviour, Texture2D> PlaneTextureCreated

RealityPlane texture创建事件。

event Action<ARCameraBaseBehaviour, TargetAbstractBehaviour, Target> TargetFound

Target找到事件。所有的target找到事件都会在这里触发。

event Action<ARCameraBaseBehaviour, TargetAbstractBehaviour, Target> TargetLost

Target丢失事件。所有的target丢失事件都会在这里触发。

event Action<ARCameraBaseBehaviourS, string> TextMessage

获取到文字事件。二维码消息在此处触发。