zoukankan      html  css  js  c++  java
  • Unity3D MainCamera和NGUI UICamera的小插曲

    集成NGUI

    在实际的项目中,经常会使用NGUI来制作UI,用Main Camera来表现3D,但是NGUI的Camer的投射是正交视图而非透视,它绑定UICamer的脚本而且它的Tag默认是Untagged

    UICamera(UI相机)

    image

    MainCamera(主相机)

    image

    遇到的问题

    搭建完场景之后运行,在Game视图只有NGUI的渲染,而Main Camer渲染的完全看不到,调Layer及Culling Mask都是没有出现Main Camera的渲染

    image

    解决方法

    1. 修改两个camera的clear flags为depth only

    2.设置UICamera.depth>MainCamera.depth

    对比两个Camera的异同,刚开始没看清楚UICamera的Clear Flags是Skybox

    image

    想了想之后,Unity手册上有讲解Camera.Clear Flags的作用。

    Clear Flags

    Clear Flags 确定了屏幕哪些部分将被清除,这是为了方便使用多个摄像机渲染不同的游戏元素,每个相机在渲染时都会存储颜色和深度信息。

    屏幕的未绘制部分是空的,默认情况下会显示天空盒。

    当你使用多个相机时,每一个相机都将自己的颜色和深度信息存储在缓冲区中,还将积累每个相机大量的的渲染数据。当场景中任何特定的相机进行渲染时,你可以设定清除标记来清除缓冲区信息的不同集合

    camera.clear flags=Solid Color (纯色)表示屏幕上的任何空的部分将显示当前相机的背景颜色。

    资料参考:Unity 3D-- 摄像机Clear Flags和Culling Mask属性用途详解

    文档资料

    摄像机 Camera

  • 相关阅读:
    BZOJ2938 POI2000病毒
    HDU2222 AC自动机模板
    BZOJ1029 [JSOI2007]建筑抢修
    BZOJ1027 [JSOI2007]合金
    BZOJ1025 [SCOI2009]游戏
    BZOJ1257 [CQOI2007]余数之和sum
    BZOJ1021 SHOI2008循环的债务
    BZOJ1030 [JSOI2007]文本生成器(AC自动机)
    POJ2728 Desert King
    POJ2976 Dropping tests
  • 原文地址:https://www.cnblogs.com/zhaoqingqing/p/3322737.html
Copyright © 2011-2022 走看看