日落20191001002 - Unity组件应用之Camera层级控制与FrameDebugger应用

环境

系统:Windows 10
引擎:Unity 2017.2.1f1

目的

通过实例了解Camera层级控制

实例

一、布局主要分为三层:模型层、特效层、UI层。

(1-1)以两个Camera作为模型层和特效层的根节点。
pic
(1-2)UI层的根节点默认为Canvas,通过生成UGUI控件(Image_UI)时自动生成Canvas和EventSystem。
pic

(1-3)在模型层(Camera_Model)下创建子控件:文本控件Text_Model、图片控件Image_Model、3D对象Capsule。
pic

(1-4)在特效层(Camera_Effect)下创建子控件:图片控件Image_Effect、粒子控件Particle System。
pic

二、调整各控件属性。

(2-1)调整各控件属性前,先添加两个层级(Model和Effect)以供分层管理。
pic

(2-2)Camera_Model的属性设置如下:
pic

(2-3)Text_Model的属性设置如下:
pic

(2-4)Image_Model的属性设置如下:
pic

(2-5)Capsule的属性设置如下:
pic

(2-6)Camera_Effect的属性设置如下:
pic

(2-7)Image_Effect的属性设置如下:
pic

(2-8)Particle System的属性设置如下:
pic

(2-9)Canvas的属性设置如下:
pic

(2-10)Image_UI的属性设置如下:
pic

(2-11)在Game窗口中可见通红的界面,显然这并非所想要的结果,而且明显是层级出了问题。
pic

三、通过Frame Debugger观察渲染过程。

(3-1)开启Frame Debugger窗口
pic

(3-2)运行工程后,按下FrameDebugger窗口的Enable按钮,可见渲染过程。
pic

(3-3)折叠渲染过程至主节点,此时可见剩下两个主节点。
pic

(3-4)观察第一个主节点:
pic

(3-5)观察第二个主节点:
pic

(3-6)根据两个节点的情况,可知这是Image_UI的层级问题所导致,而Image_UI是源于Canvas的默认UGUI镜头。

四、通过改变画布的默认渲染层级,以修正层级问题。

(4-1)添加一个用于UI的相机(Camera_UI)
pic

(4-2)调整Canvas的Render Mode(设为屏幕空间的相机Screen Space - Camera)和Render Camera(设为新加的相机Camera_UI)的参数值,可以显示出正确的层级。
pic

(4-3)再调整一下Canvas的其他参数:
pic

(4-4)运行后,可见Frame Debugger窗口的渲染只剩下一个主节点,默认的UGUI渲染节点已被干掉,从而得到正确展示效果。
pic

以上简单回顾。

参考资料:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值