Unity开发——多相机场景下,物体显示的常用设置

本文详细介绍了Unity中多相机的配置与使用,包括主相机与子相机的设置,如渲染顺序、渲染类型、相机视野、剔除遮罩等参数。通过设置相机的CullingMask和Layer,实现不同相机渲染不同物体,避免渲染重叠。UI相机用于渲染UI层的物体,而其他子相机则根据ClippingPanels和FieldOfView限制渲染特定区域和范围内的物体,以达到预期的叠加显示效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、多相机

1、主相机:MainCamera;
2、子相机:ClippingCamera、FieldViewCamera、UICamera:
3、显示设置:

为了减少干扰,每个物体仅被唯一的相机渲染,不同相机渲染物体不重复;

不同子相机显示各自特定物体,不和主相机同时渲染;

4、设置多相机的渲染顺序:

将子相机添加进MainCamera的Stack模块下,并根据渲染顺序进行排列;

子相机显示内容将会按在主相机Stack里的顺序,先后把各自渲染的物体渲染到主相机里;

不在主相机的Stack模块下的相机,相机显示的物体不会叠加到主相机里;

二、不同的参数设置

1、相机默认值:
(1)RenderType:

主相机类型——Base;子相机为Overly;

(2)FieldOfView和ClippingPanels:

相机视野大小和远近;

只有在相机视野范围内的物体或着说物体在相机视野范围的那部分,才会被渲染/正常渲染;

(3)Culling Mask:

可被渲染的物体的Layer层值;

物体的Layer值是相机Culling Mask勾选值之一,则该相机会渲染出该物体;

这里主相机仅渲染相机视野内,Layer值为Default的物体;

(4)MainCamera设置

(5)主相机默认渲染的物体 :

Layer == Default

2、设置专门标签,对应物体不会被相机渲染

FireLayer层的物体不在子相机和主相机渲染目标里;

3、CullingMask/Layer层级
(1)渲染UI Layer的相机:

仅渲染Layer值为UI的物体;

说明:除相机类型RenderType和CullingMask值不同,其他参数和主相机完全一致;

 (2)UI相机渲染显示的UI对象;

物体的Layer为UI层,后面效果图里所有text文本,以及UI文本下面的cube,均会被UI相机渲染显示,并叠加到主相机里;层级设置如下,Layer设置为UI。

如下显示的text文本,是放在Layer层级为 Default的Cube物体上的text文本;

4、ClippingPanels,相机的大小尺寸设置;
(1)与主相机仅ClippingPanels范围不同的子相机:

仅显示相机ClippingPanels范围内的物体;

为了区别默认相机的渲染,这里Layer层级使用单独的3dObject层级专门渲染;

 (2)用于显示参考的cube对象;

5、FieldOfView,相机可见范围的远近设置;

仅显示距离相机FieldOfView距离内的物体;

为了区别默认相机的渲染,这里Layer层级使用单独的3dObject2层级专门渲染;

 三、不同相机叠加显示效果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值