java-如何重置或重新启动ARCore会话?

我需要重置/重新启动ARCore会话.在ARKit中,我只需要创建一个新配置并执行RunWithConfigAndOptions方法,但是在ARCore中找不到有关如何执行此操作的任何信息.以下是我在Unity for ARKit中使用的代码

ARKitWorldTrackingSessionConfiguration config = new ARKitWorldTrackingSessionConfiguration();
config.planeDetection = UnityARPlaneDetection.Horizontal;
config.alignment = Unityaralignment.UnityaralignmentGravity;
config.enableLightEstimation = true;  

UnityARSessionNativeInterface.GetARSessionNativeInterface().RunWithConfigAndOptions(config, 
                                                                                    UnityARSessionRunoption.ARSessionRunoptionRemoveExistingAnchors | 
                                                                                    UnityARSessionRunoption.ARSessionRunoptionResetTracking);

我在Unity中工作,但是我想任何信息都将有用.

谢谢

解决方法:

尝试Dest​​royImmediate(session)或Destroy(session).其中之一可能会起作用.

ARCoreSession session = goARCoreDevice.GetComponent<ARCoreSession>();
ARCoreSessionConfig myConfig = session.SessionConfig;

DestroyImmediate(session);
// Destroy(session);

yield return null;

session = goARCoreDevice.AddComponent<ARCoreSession>();
session.SessionConfig = myConfig;
session.enabled = true;

希望这可以帮助.

相关文章

前言 本文记录unity3D开发环境的搭建 unity安装 unity有中文...
前言 有时候我们希望公告牌跟随镜头旋转永远平行面向屏幕,同...
前言 经过一段时间的学习与实际开发,unity3D也勉强算是强行...
前言 在unity中我们常用的获取鼠标点击的方法有: 1、在3D场...
前言 在之前的例子中,我们都没有用到unity的精髓,例如地形...
这篇文章将为大家详细讲解有关Unity3D中如何通过Animator动画...