ARSession Class¶
Description¶
在场景中控制AR会话的 MonoBehaviour 。一个会话包含一组组装成 ARAssembly 的组件,并控制整个生命周期的数据流。这个类是AR的入口,如果要实现完全不同的AR工作流可以创建一个新的会话类并在场景中替换这个类。
Enums¶
public enum ARSession.ARCenterMode |
AR中心模式。 |
public enum ARSession.ARHorizontalFlipMode |
水平镜像渲染模式。 |
MonoBehaviour Messages¶
private void Start() |
private void Update() |
private void OnDestroy() |
Fields¶
CenterMode¶
- C#
public ARSession.ARCenterMode CenterMode
AR中心模式。可随时修改,立即生效。
CenterTarget¶
- C#
public TargetController CenterTarget
ARSession.CenterMode == ARSession.ARCenterMode.FirstTarget 或 ARSession.CenterMode == ARSession.ARCenterMode.SpecificTarget 时的AR中心 Target 。可随时修改,立即生效。
WorldRootController¶
- C#
public WorldRootController WorldRootController
ARSession.CenterMode == ARSession.ARCenterMode.WorldRoot 时的AR中心 ARSession.WorldRootController 。可随时修改,立即生效。
HorizontalFlipNormal¶
- C#
public ARSession.ARHorizontalFlipMode HorizontalFlipNormal
正常相机的水平镜像渲染模式。可随时修改,立即生效。
HorizontalFlipFront¶
- C#
public ARSession.ARHorizontalFlipMode HorizontalFlipFront
前置相机的水平镜像渲染模式。可随时修改,立即生效。
AssembleMode¶
- C#
public ARAssembly.AssembleMode AssembleMode
在 ARAssembly.Assemble 中使用的组装模式。
Assembly¶
- C#
public ARAssembly Assembly
AR组件的组装体。
Properties¶
FrameCameraParameters¶
- C#
public Optional< CameraParameters > FrameCameraParameters { get; }
当前帧的 CameraParameters 。
Delegates¶
FrameChangeAction¶
- C#
public delegate void FrameChangeAction( OutputFrame outputFrame, Matrix4x4 displayCompensation)
输出帧发生改变的委托。
Events¶
FrameChange¶
- C#
public event ARSession.FrameChangeAction FrameChange
输出帧发生改变的事件。该事件会在数据本身产生变化的时候发生,频率受 FrameSource 数据变化(比如 CameraDevice 帧率)影响。
FrameUpdate¶
- C#
public event Action< OutputFrame > FrameUpdate
输出帧更新事件,该更新频率和MonoBehaviour Update频率相同。
WorldRootChanged¶
- C#
public event Action< WorldRootController > WorldRootChanged
Methods¶
ImageCoordinatesFromScreenCoordinates¶
从屏幕坐标系([0, 1]^2)变换到图像坐标系([0, 1]^2)。 pointInView 需要被归一化到[0, 1]^2。