Bootstrap

(2025)Unity基于ARCore(ARFoundation)实现安卓设备平面检测并渲染

首先在Unity PackageManager中导入ARFoundation和ARCore包。

 右键Hierarchy面板,添加AR Session Origin组件。

 为AR Session Origin添加AR Session和AR Plane Manager脚本。

 创建一个Plane物体,添加如下脚本,并将该Plane拖拽到 Assets文件夹内,自动生成Prefab。

为Plane替换材质,默认Standard材质有Cull剔除(背面看是透明的),会导致平面渲染出bug,这里替换为我自己写的Shader生成的双面渲染材质。渲染模式选择透明,透明度调为50%。

 随后把做好的Prefab拖入如图位置,并删除场景中的原摄像机。

 把转译框架改为IL2CPP,并将最低安卓API依赖版本改为28(不修改此项会导致打包出来Google AR框架报错)

 打包出APK并安装,效果如下

因安卓手机没有激光雷达,故平面识别范围有限且效果一般,建议使用iPad的ARKit包,效果较好。 

;