CameraDeviceBaseBehaviour Class¶
Inherits: DeviceAbstractBehaviour
Description¶
CameraDeviceBaseBehaviour是在AR场景中控制CameraDevice的component。
它包含AR链条的入口, OpenAndStart 。
下面这段代码演示了在后置camera在使用并且跟踪也在进行中的情况下,如何动态切换成前置camera。
ARBuilder.Instance.CameraDeviceBehaviours[0].Close();
ARBuilder.Instance.CameraDeviceBehaviours[0].CameraDeviceType = CameraDevice.Device.Front;
ARBuilder.Instance.CameraDeviceBehaviours[0].OpenAndStart();
Public Properties¶
bool HorizontalFlip (since 1.3.0)
Public Fields¶
CameraDevice.Device CameraDeviceType float CameraFPS Vector2 CameraSize bool CaptureWhenStart CameraDevice Device
Public Functions¶
void Close() void OpenAndStart() bool StartCapture() bool StopCapture()
Public Events¶
event Action<CameraDeviceBaseBehaviour, bool> DeviceStart
Overwritten MonoBahaviour Functions¶
protected virtual void OnDestroy() protected virtual void Start()
CameraDevice.Device CameraDeviceType¶
需要打开的设备。它必须在调用OpenAndStart之前被设上才会有效。
float CameraFPS¶
Camera帧率。它必须在调用OpenAndStart之前被设上才会有效。
Vector2 CameraSize¶
Camera大小。它必须在调用OpenAndStart之前被设上才会有效。
bool HorizontalFlip (since 1.3.0)¶
水平翻转标志。如果设置,camera图像相对默认状态会水平翻转。
bool CaptureWhenStart¶
是否在MonoBehaviour.Start调用的时候打开设备并开始捕获图像。如果为false,你必须调用OpenAndStart来启动整个 AR工作链。
CameraDevice Device¶
CameraDevice物体。你可以通过Device获得更加高级的控制。详见 CameraDevice 。
void Close()¶
关闭camera,整个AR链条将会停止。你可以使用 bind 调用来修改AR场景内物体的连接和数据流向,也可以通过更改CameraDevic eType来改变camera设备。调用OpenAndStart来重新启动整个场景。
void OpenAndStart()¶
打开类型为CameraDeviceType的设备并立即开始捕获图像。详见 CameraDevice.Open 以及 CameraDevice.Start 。
这是整个AR场景的起始点。在调用这个方法之前,除了ImageTargetBaseBehaviour.Bind以外的所有连接(所有 bind 调用)必须已经完成。它会使用 bind 方法所建立的连接来启动整个AR场景。
bool StartCapture()¶
开始捕获图像。详见 CameraDevice.Start 。
bool StopCapture()¶
停止捕获图像。所有连接和配置将保持不变。详见 CameraDevice.Stop 。
event Action<CameraDeviceBaseBehaviour, bool> DeviceStart¶
OpenAndStart之后被调用的事件。