Cinemachine 1.虚拟摄像机

安装Cinemachine

通过Packages Manager,选择Unity Registry,可以搜到Cinemachine。
Cinemachine

添加虚拟摄像机(Virtual Camera)

Cinemachine 1.虚拟摄像机_第1张图片
选择Virtual Camera,此时会在主摄像机上添加CinemachineBrain,它用来控制不同摄像机的切换,混合,另外自动生成一个虚拟摄像机。
Cinemachine 1.虚拟摄像机_第2张图片
Cinemachine 1.虚拟摄像机_第3张图片
Live Camera 显示当前正在使用的相机。
Live Blend 当发生相机切换时,这里会显示对应的相机,类似“相机2from相机1”。
Show Debug Text 会在Game视图左上角显示当前使用的相机和相机之间的切换。
Show Camera Frustum 显示当前相机的视锥体。
World Up Override 设置相机向上的向量,默认None表示世界空间中Y轴的方向,即 (0, 1, 0)。不然使用设置的GameObject的Y轴的方向。在俯视角游戏中设置该选项可以避免万向节锁(gimbal-lock)。
Update Method 更新相机位置和旋转,与什么方法同步。

  • Fixed Update 与物理引擎同步。
  • Late Update 与画面绘制同步,MonoBehaviour 中的 LateUpdate。
  • Smart Update 根据目标的更新方式更新每个虚拟相机。
  • Manual Update 写代码更新。

Blend Update Method 两个相机切换时与什么进行同步。
Default Blend 默认的相机切换模式。
Custom Blends 自定义两个相机间的切换模式。
Camera Cut Event 相机发生瞬间切换(Cut)时触发的事件。
Camera Cut Event 相机在非瞬间切换时,第一帧触发的事件。

Cinemachine 1.虚拟摄像机_第4张图片
可以看到虚拟相机的几个重要模块

  • Lens:调整FOV参数
  • Body:控制相机与目标物之间的相对位置
  • Aim:控制相机的旋转
  • Noise:相机抖动
  • Extensions:扩展模块,如碰撞处理等。

Cinemachine 1.虚拟摄像机_第5张图片
Body提供了几种算法设置虚拟相机的移动

  • 3rd Person Follow:第三人称跟随
  • Framing Transposer:屏幕空间中保持相机和目标物的相对位置,常用于2D游戏
  • Hard Lock To Target:把相机和目标物位置朝向进行绑定,常用于第一人称游戏
  • Orbital Transposer:玩家可以控制相机在一个圆环上移动
  • Tracked Dolly:相机沿着预设的轨道移动
  • Transposer:相机和目标物的相对位置固定

Cinemachine 1.虚拟摄像机_第6张图片
Aim提供了几种算法来控制相机的旋转

  • Composer:保持目标物在镜头内,可以设置多种约束
  • Group Composer:保持多个目标物在相机内
  • Hard Look At:保持目标物在相机中心
  • POV:根据用户的操作旋转相机
  • Same As Follow Target:将相机的旋转设置为跟随目标的旋转

跟随效果(Follow)

Cinemachine 1.虚拟摄像机_第7张图片
点Solo按钮会切换到当前相机能看到的画面。
Save During Play表示游戏运行时修改参数也会保存下来。
Follow是跟随的物体
Follow Offset设置相机的偏移量
Body属性选择相机跟随的方式,Transposer表示跟随目标移动,并在世界空间中保持相机和跟随目标之间的距离。
多个摄像机时,Priority设置优先级。
Damping用于设置阻尼,也就是相机移动的速度。
Follow和Body的设置只会影响到相机的Position,不会影响Rotation。

注视(Look At)

Cinemachine 1.虚拟摄像机_第8张图片
将模型的某个节点添加到Look At,相机会注视这个节点。
Aim属性用于设置相机旋转时使用什么算法,Composer为保持目标物体在镜头内。
屏幕中间空白的是死亡区,节点在这个区域内,摄像头就不会旋转。外圈蓝色的是缓冲区,当节点进入缓冲区,摄像机才会旋转并尽量保持节点在死亡区内。最外圈红色表示节点不能进入的区域。
Look At和Aim的设置只会影响到相机的Rotation。

抖动(Noise)

Cinemachine 1.虚拟摄像机_第9张图片
Noise用于设置一些摄像机抖动效果

参考视频

你可能感兴趣的:(Cinemachine,unity)