如何重置或重启ARCore会话?

时间:2018-10-29 20:08:47

标签: java unity3d kotlin augmented-reality arcore

我需要sess.run([encoder_state], feed_dict={...})[0] / reset进行ARCore会话。在ARKit中,我只需要创建一个新配置并执行restart方法,但是在ARCore中找不到有关如何执行此操作的任何信息。以下是我在Unity for ARKit中使用的代码:

RunWithConfigAndOptions

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

谢谢

2 个答案:

答案 0 :(得分:3)

尝试DestroyImmediate(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;

希望这会有所帮助。

答案 1 :(得分:0)

要禁用ARCore会话,

GameObject.Find ("ARCore Device").GetComponent<ARCoreSession> ().enabled = false;

要重置ARCore会话,

//Resetting ARCoreSession
ARCoreSession session = GameObject.Find ("ARCore Device").GetComponent<ARCoreSession> ();
ARCoreSessionConfig myConfig = session.SessionConfig;
DestroyImmediate (session);