为了方便AR开发交流,博主建立了一个群 :891555732,欢迎一起讨论
情况是这样子的,本博主的手机呢是vivo,公司新采购的测试手机是小米8 SE,然后好好地项目老板要演示的时候,我信誓旦旦的说AR没有问题,结果...那是啪啪啪的打脸啊,小米一进AR界面就黑屏,但是vivo没问题,明明是一样的安装包,好吧,接下来各种排BUG
最后发现,我再项目中使用了关闭打开摄像头的方法,如下:
public void OpenCameraDevice()
{
CameraDevice.Instance.Init(CameraDevice.CameraDirection.CAMERA_DEFAULT);
CameraDevice.Instance.Start();
}
// 关闭相机
public void CloseCameraDevice()
{
CameraDevice.Instance.Stop();
CameraDevice.Instance.Deinit();
}
然后我是有两个场景的,一个是初始场景是不需要识别的,如果一直开启摄像头,手机很容易就发烫了,所以需要进入AR场景时再打开摄像头,然后我是在Start方法里面调用开启摄像头的方法,也正因为如此,才导致Could not initialize the tracker.
只要延迟0.5s调用就可以了
Invoke("OpenCameraDevice",0.5f);
然后闪烁的解决方案:
将ARCamera-Camera中的Near值调大