1、简单介绍


        Unity的摄像机是用来将游戏世界呈现给玩家的,游戏场景中至少有一台摄像机。也能够有多台。

2、类型


        Unity中支持两种类型的摄像机,各自是Perspective(透视)以及Orthographic(正交)两种。

3、參数


        在Unity中创建摄像机对象时。默认情况下除了Transform组件还会带有Camera、GUI Layer、Flare Layer和Audio Listener组件。以下介绍下Camera组件的參数。

3.1    Clear Flags


                清除标记。

决定屏幕的哪个部分将被清除。

该项一般用于使用多台摄像机来描绘不同游戏对象的情况,有3中模式:


3.1.1    SkyBox


                        天空盒。该模式为默认设置。在屏幕中空白的部分将显示当前摄像机的天空盒。假设当前摄像机没有设置天空盒,它会默认使用Background色。


3.1.2    Solid Color


                        纯色。选择该模式屏幕上的空白部分将显示当前摄像机的Background色。

3.1.3    Depth Only


                        仅深度。该模式用于游戏对象不希望被裁剪的情况。

3.1.4    Don't Clear


                        不清除。

该模式不清除不论什么颜色或深度缓存。其结果是,每帧渲染的结果叠加在下一帧之上。一般与自己定义的Shader配合使用。


3.2    Background


                背景。该项用于设置背景颜色。在镜头中的全部元素渲染完毕且没有指定Skybox的情况下,将设置的颜色应用到屏幕的空白处。

3.3    Culing Mask

                剔除遮罩。根据游戏对象所指定的层来控制摄像机所渲染的游戏对象。

3.4    Projection


                投射方式。有两种

3.4.1    Perspective


                        透视。摄像机将用透视的方式来渲染游戏对象。


3.4.2    Orthographic


                        正交。

摄像机将用无透视感的方式均匀的渲染游戏对象。


3.5    Field of view


                视野范围(仅仅针对透视模式)。该项用于控制摄像机的视角宽度,以及纵向的角度尺寸。

3.6    Size


                大小(仅仅针对正交模式)。

该项用于控制正交模式摄像机的视口大小。


3.7    Clipping Planes


                剪裁平面。摄像机開始渲染与停止渲染之间的距离。


3.7.1    Near


                        近点。

摄像机開始渲染的近期的点。


3.7.2    Far


                        远点。摄像机開始渲染的最远的点。

3.8    Viewport Rect


                 标准视图矩形。用四个数值来控制该摄像机的视图将绘制在屏幕的位置及大小,该项使用屏幕坐标系,数值在0~1之间。

3.8.1    X


                        摄像机视图进行绘制的水平位置起点。

3.8.2    Y


                        摄像机视图进行绘制的垂直位置起点。

3.8.1    W


                        摄像机视图绘制到屏幕上的宽度。

3.8.1    H


                        摄像机视图绘制到屏幕上的高度。

3.9    Depth


                深度。该项用于控制摄像机的渲染顺序,较大值的摄像机将被渲染在较小值的摄像机之上。

3.10    Rendering Path


                渲染路径。该项用于指定摄像机的渲染方法。


3.10.1    Use Player Settings


                        使用Project Settings->Player中的设置。

该摄像机将使用设置的渲染路径。


3.10.2    Vertex Lit


                        顶点光照。摄像机将对所以的游戏对象作为顶点光照对象来渲染。


3.10.3    Forward


                        高速渲染。

摄像机将对全部的游戏对象将按每种材质一个通道的方式来渲染。如同在Unity2.x中的渲染方式。


3.10.4    DeferredLighting


                        延迟光照。摄像机先对所以游戏对象进行一次无光照渲染。用屏幕空间大小的Buffer保存几何体的深度、光线以及高光强度,生成的Buffer将用于计算光照。同一时候生成一张新的光照信心Buffer。

最后全部的游戏对象会被再次渲染,渲染时叠加光照信息Buffer的内容。


3.11    Target Texture


                目标纹理。

该项用于将摄像机视图输出并渲染到屏幕。一般用于制作导航图或者画中画等效果。


3.12    HDR


                高动态光照渲染。该项用于启用摄像机的高动态范围渲染功能。由于人眼对地范围的光照强度更为敏感。所以使用高动态范围渲染可以让场景更为真实,光照的变化不会显得太突兀。

unity3d从零開始(五):了解摄像机的更多相关文章

  1. 从零開始学习OpenCL开发(一)架构

    多谢大家关注 转载本文请注明:http://blog.csdn.net/leonwei/article/details/8880012 本文将作为我<从零開始做OpenCL开发>系列文章的 ...

  2. 从零開始学Swift之Hello World进化版

    上节课,也就是昨晚啦,我们学习到从零開始学Swift之Hello World.那一节仅仅有一句代码,大家会认为不够过瘾. 那么这节课,就给大家来多点瘾货吧! 先上图! //var 代表变量的类型, s ...

  3. 关东升的《从零開始学Swift》即将出版

    大家好: 苹果2015WWDC大会公布了Swift2.0,它较之前的版本号Swift1.x有非常大的变化.所以我即将出版<从零開始学Swift><从零開始学Swift>将在&l ...

  4. # 从零開始搭建Hadoop2.7.1的分布式集群

    Hadoop 2.7.1 (2015-7-6更新),Hadoop的环境配置不是特别的复杂,可是确实有非常多细节须要注意.不然会造成很多配置错误的情况.尽量保证一次配置正确防止重复改动. 网上教程有非常 ...

  5. Bmob移动后端云服务平台--Android从零開始--(二)android高速入门

    Bmob移动后端云服务平台--Android从零開始--(二)android高速入门 上一篇博文我们简介何为Bmob移动后端服务平台,以及其相关功能和优势. 本文将利用Bmob高速实现简单样例,进一步 ...

  6. 从零開始怎么写android native service?

    从零開始怎么写android native service Android service对于从事android开发的人都不是一个陌生的东西,非常多人可能会认为服务非常easy. 服务是简单,由于复杂 ...

  7. Bmob移动后端云服务平台--Android从零開始--(一)何为Bmob

    Bmob移动后端云服务平台--Android从零開始--(一)何为Bmob 在正式的项目开发中,单client不能满足我们的需求,须要实现client与服务端的连接. 而在编写Android服务端代码 ...

  8. 《PHP 5.5从零開始学(视频教学版)》内容简单介绍、文件夹

    <PHP 5.5从零開始学(视频教学版)>当当网购买地址: http://product.dangdang.com/23586810.html <PHP 5.5从零開始学(视频教学版 ...

  9. 从零開始学android&lt;数据存储(1)SharedPreferences属性文件.三十五.&gt;

    在android中有五种保存数据的方法.各自是: Shared Preferences Store private primitive data in key-value pairs. 相应属性的键值 ...

随机推荐

  1. 【POJ3352】Road Construction(边双联通分量)

    题意:给一个无向图,问最少添加多少条边后能使整个图变成双连通分量. 思路:双连通分量缩点,缩点后给度为1的分量两两之间连边,要连(ans+1) div 2条 low[u]即为u所在的分量编号,flag ...

  2. Manjaro中源码安装gcc7.1

    刚刚gcc 7.1也出来了,想在使用熟悉的linux下试试,特记录如下: 准备必要的系统环境:(升级系统到最新,安装必要的工具) pacman -Syyu                        ...

  3. MySQL 源码编译安装

    脚本须知: 1. 该脚本目前只测试过mysql版本为5.6.x的源码,其他源码可以对本脚本稍作修改即可 2. 本脚本也可以使用wget mysql源码的方式进行,但考虑到后期提供源码的地址不可用,所以 ...

  4. CentOS找不到想要的镜像版本?

    CentOS找不到想要的镜像版本? 情景: 当学习Linux时,一般教程不是最新的,教程里的CentOS版本也就不是最新的,这个时候, 在看着教程练习的时候就需要安装指定的版本,避免因为版本不同造成困 ...

  5. unity3d Resources.Load动态加载资源

    初步整理并且学习unity3d资源加载方法,预计用时两天完成入门学习Unity3d常用两种加载资源方案:Resources.Load和AssetBundle Resources.Load就是从一个缺省 ...

  6. linux time

    uint32_t midtime; static struct timeval startstart,midmid; while (ros::ok()) { gettimeofday(&sta ...

  7. ApplicationContext介绍

    如果说BeanFactory是Spring的心脏,那么ApplicationContext就是完整的身躯了.ApplicationContext由BeanFactory派生而来,提供了更多面向实际应用 ...

  8. Android view 数据缓存

    Android中经常需要用到view数据的缓存,比如我们希望EditText 在被切到别的界面的时候,输入的数据要仍保持不变. 参考代码: /* 缓存textview */ public class ...

  9. scrapy 启动失败,scrapy startproject test 出错 'module' object has no attribute 'OP_NO_TLSv1_1

    你先看看 pip install scrapy需要的 pyopenssl  twisted  等和你安装的版本一样么  我的就是因为TWist 版本高于  需要的 用pip install twist ...

  10. 老司机找bug的十年心路历程

    一.码畜:靠编译器帮自己查语法错误 消灭笔误:编写适合程序猿的键盘练习 if (常量==变量或表达式) 使用goto接力超长的if,switch 连续的if还是if elseif 多个条件的组合:精心 ...