今天学习到一个多个摄像机看到的场景在同一个层显示,比如我们做一个类似反光镜的效果,当然反光镜可以直接用Shader来实现,但我就是了实现一个类比这样的一个效果,一个摄像机将看到的图像显示到一个Texture上,然后将Textrue赋予一个面板,然后另一个摄像机看到这个的这个面板放在UI层,然后最后将所有场景里面的物体都置于MainCamera的可见区域。

效果图:

[Unity3d]多个摄像机叠加效果_第1张图片

制作过程:

1.导入NGUI包,创建四个Button,分别命名为设备1-4,这就形成了左边的四个按钮;
2.创建一个新的层,取名为UI层;
3.创建一个Texture和一个Camera,并将Camera的Culling Mask的UI层取消,并且将它的TargetTexture设为刚刚新建的Texture,这样这个摄像机所看到的就呈现在这个texture上;
4.新建一个Plane和新的Camera,并将该Plane竖直放置,并且拖放到这个Camera下,然后将Texture拖放到Plane里,设置这个摄像机的Layer为UI,并且将CullingMask设置为UI;
5.设置MainCamera的CullingMask属性去掉UI层,不然也能看到UI层,就会出现两个UI层了;