参考教程:AR 传送门教程 Unity - Portal Mask Implementation - Part 4_哔哩哔哩_bilibili
这里的AR设置不需要管,AR相机换成Main Camera即可,亲测可行。该教程下有需要的资产的百度网盘链接,需要自行下载
1.创建文件夹 Materials->sponza,将下载的材质贴图全部移到该文件夹下
2,创建文件夹3d,将门和隧道模型(Protal.fbx,Sponza.FBX)加入文件夹中
3.将门和隧道模型放到一起拖入场景中,其中隧道模型作为门模型的子物体,如图左边的物体层级关系
4.将shader脚本分别放入如下文件夹下,刚刚创建的Materials文件夹再创建Sponza文件夹,将Sponza.shader拖入Sponza文件夹,Protal.shader拖入Materials文件夹下
5.将sponza.shader分别拖入以上材质中(全部都要拖入,这里太多了后面箭头没有画),新建一个空白材质命名为Protal,将Protal.shader拖入Protal材质中.
6.在Protal子对象中创建一个ProtalPlane 3D平面对象,通过移动,旋转,缩放对齐到门框上
7.新建ProtalPlane材质,将ProtalPlane.shader拖入ProtalPlane材质中再托到ProtalPlane3D物体上
8.编辑Sponza.shader,在shader脚本上添上如下三行代码
9.新建ProtalMananger.cs脚本,代码如下
10.ProtalPlane添加上ProtalManager脚本,MainCamera参数拖入相机即可
11.Maincamera添加刚体和碰撞盒对象,勾选设置如下,去掉刚体的重力,勾选碰撞盒的是触发器和Edit Collider选项
12.ProtalPlane3D平面也添加上Box Collider脚本,这两个勾选上
13.保存点击运行,效果如下