Cinemachine在2D横版游戏中的使用方法简介

  • Cinemachine的下载及导入
  • Cinemachine基础
  • 设置
  • 简单用法的一些重要的属性(没讲到的暂时就保持默认设置,如果有补充,欢迎评论区留言)
  • 问题来了
  • Cinemachine高级
  • 白区蓝区红区
  • 高级用法的一些属性(Body中)


Cinemachine的下载及导入

  1. 下载
    现在的版本不再需要从assets store中下载了,直接从package manager中就能找到Cinemachine这个插件。初次找到,请点击Download下载!
  2. cinemachine 调整mask_Soft

  3. 创建Cinemachine对象
  4. cinemachine 调整mask_Soft_02

我们选择创建虚拟摄像机Virtual Camera后,便会出现一个名为CM vcam1
的虚拟摄像机。

Cinemachine基础

设置

  1. 取消主摄像机上的Cinemachine Brain的组件。
  2. 添加第二个摄像机。
  3. 在第二个摄像机上添加Cinemachine Brain组件。(添加了这个组件后这个摄像机就没法通过拖拽它移动了,只有移动CM vcam1才能移动摄像机,也就是说,他们已经绑定了)
  4. 点击CM vcam1,将player拖入右侧的follow栏中,便能实现摄像机跟随玩家啦。

简单用法的一些重要的属性(没讲到的暂时就保持默认设置,如果有补充,欢迎评论区留言)

  1. Follow : 跟随那个目标
  2. Look at : 看向哪个目标(3D游戏中经常使用,由于是2D游戏,不需要控制旋转,所以默认None就行了)
  3. Vertical VOF(Lens中):该值越大则摄像机距离2D平面越远,game视图中看到的地图,玩家等越小。该值越小则摄像机越近,但太近会看到非常模糊的一个个像素。
  4. Body中,此时Body为transposer。
  1. X/Y/Z damping () : X/Y/Z方向阻尼。该值越小,则摄像机跟随越快。该值越大,摄像机跟随越慢。
  2. Yaw damping:与摄像机的旋转跟随相关,但由于这是2D游戏,没有旋转,保持不变即可。

问题来了

但是一般横板2D游戏中并不是摄像机完全跟随玩家,而是玩家到达一定位置后,摄像机才会跟随。并且如果我不停的左右左右,便会出现屏幕一直在晃动的鬼畜情况。

Cinemachine高级

将Body选择为Framing Transposer,即按帧计算的移动方式。此时再选中CM vcam1则会发现,摄像机的中心变成了一个黄点。而在黄点上有一横一竖两条蓝线,也就是下面所说的死线。以及红区和蓝区两部分(改变死线还会出现白区)

cinemachine 调整mask_Soft_03

白区蓝区红区

  1. 白区:跟随对象在白区内,摄像机不跟随。
  2. 蓝区: 跟随对象移动至蓝区中,摄像机就会跟随。
  3. 红区: 跟随对象高速移动时,会由于摄像机没有及时跟随上目标而丢失目标不在跟随。此时红区的作用就是,当跟随目标触及红线时,摄像机会立即跟随目标而不是缓慢跟随。

高级用法的一些属性(Body中)

cinemachine 调整mask_2d游戏_04

  1. Lookahead Time: 通过计算物体的速度和加速度估计跟随对象该值的时间后,会运动到什么地方,将这个地方设置为黄点的位置。这样摄像机就拥有了一定的预判性。当跟随对象向左移动时,则摄像机视图看左多一点;当跟随对象向右移动时,则摄像机视图看右多一点。
  2. Lookahead Smoothing:预测的平滑速度。该值为0时,黄点会直接锁定到预测位置。该值增大,黄点会以缓慢移动的形式移动至预测位置。
  3. Lookahead Ignore Y:但是第一个功能的预测在Y轴上会导致镜头上下晃动,勾选这个选项后,则忽略Y轴的预测。
  4. X/Y/Z damping : 与Transposer中的功能一样。
  5. Screen X/Y : 摄像机的位置。默认为0.5,即中心位置。Screen X变大则向右移动,Screen Y变大则向上移动。
  6. Dead Zone Width : 调整竖着的蓝线,向左右两边分开,调整白区宽度。该值增大则白区宽度增加。
  7. Dead Zone Height :调整横着的蓝线,向上下两边分开,调整白区高度。该值增大则白区高度增加
  8. Soft Zone Width :调整竖着的红线,向左右两边分开,调整蓝区和红区宽度。该值增大则则蓝区宽度增加,红区宽度减少。(不要迅速减小,当红线退至蓝线继续减小时,会推动蓝线移动。当该值为0时,则直接锁定跟随对象,于是摄像机一直快速跟随玩家。)
  9. Soft Zone Height :调整竖着的红线,向上下两边分开,调整蓝区和红区高度。该值增大则则蓝区高度增加,红区高度减少。(不要迅速减小,当红线退至蓝线继续减小时,会推动蓝线移动。当该值为0时,则直接锁定跟随对象,于是摄像机一直快速跟随玩家。)