一、代码实现
public class MyComponent {
[SerializeField] ARSession m_Session;
IEnumerator Start() {
if ((ARSession.state == ARSessionState.None) ||(ARSession.state == ARSessionState.CheckingAvailability))
{
yield return ARSession.CheckAvailability();
}
if (ARSession.state == ARSessionState.Unsupported)
{
// Start some fallback experience for unsupported devices
}
else
{
// Start the AR session
m_Session.enabled = true;
}
}
}
二、ARSessionState
ARSessionState |
描述 |
---|---|
None |
AR系统尚未初始化,可用性未知。 |
Unsupported |
当前设备不支持AR。 |
CheckingAvailability |
系统正在检查当前设备上AR的可用性。 |
NeedsInstall |
当前设备支持AR,但是AR支持需要安装其他软件。 |
Installing |
正在安装AR软件。 |
Ready |
AR已支持并准备就绪。 |
SessionInitialized |
AR会话正在初始化(即正在启动)。这通常意味着AR正在运行,但尚未收集到足够的有关环境的信息。 |
SessionTracking |
AR会话正在运行并且正在跟踪(也就是说,设备能够确定其在世界上的位置和方向)。 |
欢迎对AR技术感兴趣的朋友,加入QQ群:883655607 讨论