一、摄像机类型
1.1 透视摄像机
透视摄像机有近大远小的效果,与我们在现实中看到的效果相同。所以当两个同样大小的物体到摄像机的距离不同时我们看到的大小也会不同。Unity的3D项目中默认使用的就是透视摄像机。
1.2 正交摄像机
正交摄像机没有近大远小的效果,当两个大小相同的物体到摄像机的距离不同时,显示的大小依然是相同的。
1.3 两种摄像机切换
点击选中摄像机物体在投影中切换透视和正交
二、给摄像机加一个天空
我们来给摄像机加一个天空,这里用的资源商店里免费的资源包,我们下载好之后导入
给摄像机加一个Skybox组件,清除标志选择天空盒,选择资源包中自己喜欢的材质。
来看一下效果:
三、摄像机的深度
当有多个摄像机的时候,深度的功能就体现出来了,选中摄像机在检查器中就会看到它。
我们新建一个摄像机Camera,让主摄像机只能看到平面,让Camera只能看到一个球体。
Main Camera:
Camera:
那么深度的作用是根据数值大小在游戏窗口中优先显示哪个摄像机拍摄到的画面:Main Camera深度调为0,Camera深度调为-1,效果如下:
摄像机画面的融合
通过深度我们还可以实现摄像机画面的融合。之前我们提到主摄像机只能看到平面,Camera只能看到一个球体,那么融合之后我们平面和球体都可以看到了。
我们把深度高的主摄像机清除标志改为仅深度,来看看我们游戏窗口中出现的画面:
四、Viewport矩形
这里顺带说一下视野和剪裁平面,点击摄像机的时候会在场景中出现一个由白线构成的锥体,物体只有出现在锥体内才会被摄像机拍到。而视野和剪裁平面的作用就是调节锥体的大小。
然后我们再来说一下Viewport矩形,有道词典查一下
概念说的很复杂,举个形象一点的例子 —— 小地图,大家是不是就明白了。小地图是我们玩三维游戏中的一个二维小窗口。我们来实际操作一下:新建一个摄像机清除标志改为纯色方便我们查看。
修改一下Viewport矩形的数值:X和Y都改为0.8,大家看这样一个右上角的红色 “小地图” 窗口就出来了。那么这个X和Y的数值代表的是什么意思呢?
把游戏窗口看做一个直角坐标系,窗口的长和宽都为 1(按照比例计算) ,X 和 Y 的值就代表了 “小地图” 起点,然后画一个 宽和高为 W 和 H 的窗口。(注:大小超过 1 的部分在窗口中就看不到了)
那我们左下角窗口怎么赋值?那当然是窗口起点为坐标原点,宽和高为0.2了。
那给右下角窗口赋值:X:0.8 Y:0 W:0.2 H:0.2
左上角: X:0 Y:0.8 W:0.2 H:0.2
当然怎么放都可以,位置、大小想怎么调就怎么调,是不是比小学数学题都简单~
五、目标纹理
首先说纹理,就是物体表面的花纹嘛,我对目标纹理的理解是把摄像机拍到的画面变成能附着在物体表面的纹理材质。
来实操一下:在项目一栏新建渲染器纹理,点击相机把新建的渲染器纹理拖到目标纹理上,这样我们游戏窗口就看不到画面了,这是因为摄像机把画面传给渲染器纹理上了。
把渲染器纹理赋给一个平面看一下效果:
这样平面表面显示的就是我们摄像机拍到的画面了,好像一面镜子啊~