【unity 3D】谷歌ARCore:通过点击按钮隐藏与显示识别的planes

2018年5月9日 0 条评论 1.23k 次阅读 1 人点赞

目前ARCore的最新版本是1.2。Unity SDK还没提供直接隐藏显示网格的接口。本文根据官方的案例进行修改。

 

控制网格线显示的类文件是TrackedPlaneVisualizer,在Update()函数中,控制网格线显示的代码是:

把这句话改为

则不管怎么识别,一直保持隐藏网格线。

 

现在需要做到的是,通过点击按钮,实时隐藏或显示网格线。

 

在官方案例中,planes是作为一个GameObject的,在每次识别到新的平面就会创建一个plane的GameObject,并且使用TrackedPlaneVisualizer.cs作为script Component来控制网格线的渲染和可视化。要在每次创建新plane的时候,将它存储到一个GameObject数组里面,再循环遍历这个数组,执行TrackedPlaneVisualizer中定义的一个控制显示和隐藏的函数。

 

添加点击事件

 

在HelloARController.cs:

 

在该脚本的Update函数中修改,下面代码只贴出Update函数的部分,其他代码与原Update代码一样, 找出相应的地方进行修改即可:

 

控制网格隐藏与显示

 

TrackedPlaneVisualizer.cs :

 

到这里基本修改完毕了。

 

最终效果

 

平兄

做任何一件事情,计划和努力应当留给自己看,成果才适合秀给他人看。

文章评论(0)