Unity虚拟相机Cinemachine教程

准备

在PackageManager中安装Cinemachine包。

1.CinemachineBrain组件

相当于虚拟相机的总管理。
Unity虚拟相机Cinemachine教程_第1张图片
参数介绍:
Live Camera:当前显示的相机
Live Blend:过度相机时显示进度
Show Debug Text:在Game视窗里显示当前使用的相机
Unity虚拟相机Cinemachine教程_第2张图片
Show Camera Frustum:显示视锥
Ignore Time Scale:是否受TimeScale影响
World Up Override:自己设置覆盖Y轴防止万向节死锁。
Update Method:Update方法,选择默认的SmartUpdate即可。
Blend Update Method:相机混合时的Update方法。
Default Blend:混合时的曲线,比如线性或者Ease之类,也可以自定义。
Custom Blends:自定义混合方案。
Events:虚拟摄像机激活时将触发此事件。如果涉及混合,则事件在混合的第一帧时触发。

2.2D虚拟相机

通过选择菜单栏中的Cinemachine可以创建我们需要的虚拟相机。(注意相机要改为Orthographic)
参数介绍
Status Live:勾选solo意味只使用这一个相机。
Game Windows Guides:是否在游戏视窗显示线框
Unity虚拟相机Cinemachine教程_第3张图片

Save During Play:勾选后可以在运行时保存组件的修改。
Priority:根据数值大小决定优先显示哪个相机,越大的优先级越高
Follow:相机跟随目标
Look At:看向目标,相机不动(2D基本不用,大多数用Follow)
Mode Override:相机模式选择
Ortho Filed:Orthographic模式下视野大小
Dutch:z轴旋转
Damping相关(阻尼):镜头缓动效果
ScreenX和ScreenY:镜头偏移
Dead Zone(死区):死区内镜头不会一直跟随。
Soft Zone(软区):在软区内镜头会缓慢跟随目标。超出软区相机会瞬移跟随。
Unlimited Soft Zone:不限制软区(去除红色部分)
下图中黑色部分为死区,蓝色部分为软区,超出红色会瞬移。
Unity虚拟相机Cinemachine教程_第4张图片
Lookahead Time:如果设置的话跟随目标点就会朝移动方向偏移,这样做比如在2D游戏中就可以看到更前面的视野。
Lookahead Smoothing:平滑值。
Lookahead Ignore Y:忽略Y轴影响。(2D游戏经常勾选,不然可能会导致镜头不稳)
黄点就是设置了Lookahead后所带来的偏移。
Unity虚拟相机Cinemachine教程_第5张图片
我们可以通过选择Extensions->AddExtension->CinemachineConfiner来为虚拟相机添加限制。
Unity虚拟相机Cinemachine教程_第6张图片
Unity虚拟相机Cinemachine教程_第7张图片
有两种方式,一种是新建一个空物体添加PolygonCollider2D组建调整好大小赋值过来。另一种如下图。
Unity虚拟相机Cinemachine教程_第8张图片
关于虚拟相机之间的切换我们常用的有两种,一种是设置Priority,会显示优先级高的。另一种是优先显示激活状态的相机,可以通过激活失活虚拟相机进行显示切换。

3.3D虚拟相机

这里只针对与2D虚拟相机的不同之处进行讲解。

参数介绍:
Field Of View:Perspective模式下视野大小
Near Clip Plane:下图部分与相机距离
Unity虚拟相机Cinemachine教程_第9张图片

Far Clip Plane:下图部分与相机距离
Unity虚拟相机Cinemachine教程_第10张图片
Noise:相机效果
Noise Profile:效果选择
Amplitude Gain:振幅
Frequence Gain:频率

要用ctrl+shift+f调整相机位置时最好勾选目标相机的solo,不然可能会出bug调整所有相机。

3D镜头限制
在这里插入图片描述
Unity虚拟相机Cinemachine教程_第11张图片

利用Timeline控制虚拟相机

创建Timeline

我们可以在Window->Sequencing->Timeline打开Timeline面板。如果没有该选项的话可以在Window->PackageManager中进行下载。之后选中场景中物体点击Create即可创建新的Timeline。
Unity虚拟相机Cinemachine教程_第12张图片
创建后会自带一个Animation Track,并且选中物体上会添加一个Animator。我们暂时用不到直接删除。
我们可以右键左侧或者点击加号创建Cinemachine Track。
Unity虚拟相机Cinemachine教程_第13张图片
创建后需要给Track添加一个Cinemachine Brain组件。
Unity虚拟相机Cinemachine教程_第14张图片
之后直接往Track中拖入虚拟相机即可(或者右键选择Add Cinemachine Shot)。并且可以拖拽模块实现混合效果。
Unity虚拟相机Cinemachine教程_第15张图片

关于body和aim

body
aim

Target Group Camera

Target Group Camera

镜头震动

镜头震动

分屏

1.新建两个Layer
Unity虚拟相机Cinemachine教程_第16张图片
2.新建两个unity camera和两个cinemachine camera。并将cinemachine camera各自设置新建的Layer。
在这里插入图片描述
在这里插入图片描述
3.两个camera分别剔除不同的层即可。
Unity虚拟相机Cinemachine教程_第17张图片
4.最后根据需求调整viewport即可。
Unity虚拟相机Cinemachine教程_第18张图片

你可能感兴趣的:(Unity学习,unity,游戏开发,U3D)