UGUI——详解摄像机模式

UGUI——详解摄像机模式

……

……

摄像机模式是一种很不错的模式。

与覆盖模式不同。

覆盖模式中的UI是后于物体渲染,所以UI总是会覆盖在物体上。

那如果需要让物体覆盖UI呢?

为了解决这个问题。

就需要用到摄像机模式。

摄像机模式怎么去理解呢?

可以这么想。

当使用了摄像机模式后。

就不再是先渲染物体,再渲染UI这种覆盖模式了。

画布会出现在距离摄像机一百米的前方位置,而后unity会根据画布和物体两者距离摄像机的远近来判断是谁遮挡谁。

上方的这个平面距离,其实就是摄像机距离画布的距离。

也就是说,当把渲染模式改成摄像机模式后,画布就会出现在摄像机前方一百米的位置,并且,一旦摄像机移动,画布就会跟着移动。

与此同时。

unity会自动的实现UI和物体的一个遮挡功能。

在摄像机的可视范围内,若是物体在UI的前方,则物体挡住UI;若物体出现在UI的后方,则UI挡住物体。具体怎样,需要通过调整平面距离去设置。

如果想要物体出现在UI前面,把平面距离调大即可。

……

……

当解决了上面的问题之后。

会发现。

如果我们有这样的一个需求怎么办。

什么需求呢?

就是说。

如果我们需要一部分物体出现在UI前面,而另外一部分物体则是出现在UI后面,这种时候怎么办呢?

这种时候,就算去调整平面距离也无济于事了。

就需要另辟蹊径。

另外添加一个专门用来渲染UI的摄像机。

首先把这个新添加的摄像机拖拽到画布的摄像机模式上。

然后就需要把主摄像机的剔除遮罩中的渲染UI给取消掉,如下:

而在新添加的摄像机上,就只渲染UI,如下:

然而。

这样设置过后。

我们会发现游戏界面显示出来的物体不对劲啊。

还需要设置两个地方才行。

首先是主摄像机和新摄像机的深度,主摄像机的深度一定要比新摄像机低。

我设置的主摄像机深度:

我设置的新摄像机深度:

除了深度的设置外,还需要在新摄像机上设置为仅深度,如下所示。

当这两个设置都修改完毕后。

就成功了。

会清楚的看到,UI出现在了物体前面。

并且,无论你怎么调整平面距离,UI始终会出现在物体的前面。(这是因为主摄像机的深度为-1,而新摄像机的深度为0,所以主摄像机中的物体会始终的先一步渲染)

可能有的人会想,这不就和覆盖模式一样了吗?

……

……

肯定是不一样的。

还记得前面设置的剔除遮罩吗?

新摄像机只渲染UI。

而画布以及画布里面的内容其实都是属于UI图层的。

所以。

如果需要让一部分物体挡住UI,那么将这一部分物体创建在画布内,这一部分物体就会自动归属于UI图层。

而创建在画布内的物体,就可以被新摄像机捕捉到。

而又因为新摄像机和画布是关联在一起的,也就是说,新摄像机的前方一百米的位置是跟随着一块画布的,所以,创建在画布内的物体,只要在新摄像机前方一百米内,都是可以遮挡住UI的。

而另外一部分被UI挡住的物体,就创建在画布之外即可,这些物体会被主摄像机捕获,并且始终创建在UI之前,所以始终会被UI给挡住。

因此,一部分物体被UI遮挡,一部分物体遮挡UI的功能就实现了。

如下图所示:

由图中可以看到。

左上角的层级面板中,我创建的小球是在画布内的。再看右上角的图层,小球也是属于UI图层的。

而其中的红色正方形,则是UI中的一个图像。

最后面的则是一个白色的正方体。

再来梳理一下:

白色的正方体是属于主摄像机的,因为主摄像机包括了除UI以外的所有图层。

而且。

由于主摄像机的深度比新摄像机的深度小,所以主摄像机的白色正方体会先渲染,于是就出现在了最后面。(不管白色正方体距离摄像机多远多近,都会出现在最后面,因为它是最开始渲染的,必定会被挡住)

而红色的正方形是属于UI的,因为UI默认是在距离新摄像机一百米远的位置,而白色小球的距离新摄像机不足一百米远,所以,白色小球会遮挡住红色正方形。

这样一个流程走下来。

就实现了一部分物体挡住UI,一部分物体被UI挡住的功能了。(白色小球挡住红色正方形,白色立方体被红色UI挡住)

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值