Unity中使用Cinemachie插件

2020-09-14 09:32发布

在游戏中玩家控制的角色在移动时,屏幕也会随着角色一起移动,此种效果处理的大致思路有两种:一种是角色位置不发生改变,只在原地做动画,场景发生移动;另一种是场景不动,角色在场景中移动。Unity中对于这两种效果的实现均是采用摄像机实时跟随角色,把捕捉到的画面渲染到电脑或者手机屏幕上面,因此摄像机的跟随效果在游戏中是非常重要的。

Cinemachine是Unity新出的用来管理相机的工具,基本上可以满足游戏中摄像机的跟随效果,同时部分功能还可以实现影视中的一些特殊成像效果,例如图像叠加效果。2017及以上版本支持该功能,2019版本已经内置,而2017和2018版本需要到AssetStore上下载免费的Cinemachine插件,如下图:

导入插件后在菜单栏上会出现Cinemachine菜单,点击该菜单显示如下列表:

以下是该插件中所能够实现效果的说明:

1、Create Virtual Camera:创建虚拟相机,可以实现相机跟随效果,效果和Create 2D Camera差不多,只是Cinemachine Virtual Camera组件中Body的值为Transposer

只需要把要跟随的物体拖到Follow上即可

2、Create FreeLook Camera:创建可以自由观察第三人称视角的虚拟相机,例如移动鼠标可以让相机围绕角色旋转,以第三人称视角观察角色

3、Create Blend List Camera:创建多个虚拟相机,然后按虚拟相机的顺序列表,依次在不同的相机之间进行切换

上面组件中Child是虚拟相机的列表,顺序可以改变,也可以增加或者减少虚拟相机,Hold用来设置所对应相机的持续工作时长,Blend in是相机的转场效果

4、Create State-Driven Camera:激活特定镜头时进入特定的动画状态,需要结合Animator动画系统来使用

5、Create Dolly Camera with Track:创建一个带有轨道的相机,会生成轨道和相机,相机只能在轨道上移动

当胶囊体运动时,虚拟相机只能在轨道上移动并且会实时看向胶囊体

6、Create Target Group Camera:创建多目标追踪相机

7、Create Mixing Camera:创建混合相机,生成的虚拟相机子物体下还有两个虚拟相机,成像是两个虚拟相机渲染出来的共同结果


上图是两个虚拟相机跟随不同的目标,下图是最终显示的效果

8、Create 2D Camera:创建2D虚拟相机,效果和Create Virtual Camera差不多,只是Cinemachine Virtual Camera组件中Body的值为Farming Transposer

9、Create Dolly Track with Cart:创建可以在轨道上运行的物体,会生成轨道以及在轨道上运行的物体

10、Import Example Asset Package:导入该插件的案例资源包,可以查看以上不同相机实现的效果

(以上部分相机效果没有截图,是因为截图出来效果不明显,大家可以通过案例来查看具体的效果)

      使用Cinemachie插件,游戏开发人员可以非常方便的控制相机,实现特殊的效果,提高开发效率。但是该插件使用的时候,需要设置的参数比较多,所以对于初级游戏开发人员来说还是有一定的困难。不过Unity官方对于该插件的功能还在不断的完善中,预计所实现的功能会越来越强大,用起来也会越来越方便,我们期待这一天的到来