Cinemachine相机
功能繁多的Cinemachine.而实际上可以简化理解.只要记住使用的时候用到的东西就可以了。
1,相机的混合与切换,---(相机切换的时候怎么过度)
2,相机位置(Body)与朝向(Aim)---(Cinemachine相机的核心概念)
3.绑定算法--(相机怎么跟拍物体)
1.相机的混合,也就是多个相机之间的过度与硬切,通过设置blend时间,与不同的切换方式(硬切,fade in/out,曲线)来实现,比较好理解。
2.相机的Body(位置)与朝向/旋转(Aim)---也就是控制相机的跟随方式,与朝向/旋转的方式.---不同类型的相机(Virtual,Freelook等...)有不同的功能,都是位置与旋转的不同实现.
3.相机绑定的具体算法,也就是具体的位置跟随方式,与旋转方式的算法.有很多,后面一一讲解哪些常用,用在什么时候.

过度效果比较简单,硬切,线性,自定义曲线和各种曲线.

1.None--直接过度.
2.Spherical Position--圆形环绕
以对象为中心的圆形,像照相机移动一样的混合方法。
3.Cylindrical Position--圆柱形环绕---(很适合做特写镜头的切换轨道)
将Blend Hint设为Cylindrical Position的话,就会变成以对象为中心移动圆柱状的混合方法。
过度效果搭配不同的变换路线,构成不同的效果.
Binding Modes---绑定算法
最常用的追踪物体的算法,应该是Transposer,与Do Nothing了,
Transposer有很多不同的方法,下面会讲到,但最常用的是把Aim设成Composer状态下使用---也就是一边跟踪物体一边注视物体.
Do Nothing是,相机不动,可以完全自己用代码写追踪逻辑,所以也比较常用.
Orbital Transposer--以对象为中心的圆圈摄影机移动,---玩家可以控制相机绕着中心转,---常用作观察绕着圈观察一个物体---
比如商店物品旋转着看,或者人物自动行走着,控制相机旋转着看周围.
Body的算法种类

Body--算法之Transposer的常用功能
Transposer主要用于追踪对象,
为了简化说明,将Aim设置为Composer状态,即注视对象的状态。
Simple Follow With World Up---一句话形容--人类摄影师追逐被拍摄对象的动作
Lock To Target--角色总是从特定方向--特写锁定,比如锁定一个跑动中人物脸部.无论这个人是转圈还是啥,都锁定一个观察位
Lock To Target no roll---和上面一样,只是角色Z轴的旋转将会被忽略.一般是用在飞机上,人物很少Z轴旋转.
Lock To Target With World Up---和上面基本一样.不过既不仰角俯角变动,也不Z轴旋转.也就是不进行pitch和roll操作.
Lock To Target On Assign--和上面基本一样,也是不随相机Y轴旋转.
World Space---一直跟着物体运动方向进行追踪
---以上这些可以参考官方文档中的动图,会更好理解.
Aim--的区域

Dead Zone,让目标保持在此区域。--透明
Soft Zone,进入Soft会让相机回到Dead。--蓝色
No Pass Zone--目标不会到达的区域--红色

1.Virtual Camera--适应于所有情况,并且支持自己编写相机控制脚本,与一些预制的相机算法-也适合做第三人称.第一人称,俯视角,等---最常用
2.Freelook camera自由观察摄影机,和虚拟相机类似的第三人称特化相机,围绕一个目标---产生三个环的相机,--可以做第三人称相机来用,但是有一些限制.---具体下面讲.---虽然是第三人称特化,但是做第三人称的时候不一定要用这个,因为有些具体的限制在.有时候不如用Virtual +自己重写一部分代码.更适合
3.State-Driven Camera--状态驱动,一般做特写时候,需要绑定Animator,以角色的不同状态绑定不同的相机,--进行动画特写,角色技能特写.时候很有用.
4.Mixing Camera---使用权重,来混合子相机的位置等.(最多8台摄影机,可在TimeLine中混合)
5.Clear Shot---可以分析场景中障碍物,在子相机中选择,获得最佳质量目标镜头,适合于即时战斗的特殊情况.
6.Dolly与Track---轨道相机,很好理解,适合过场。
7.BlendList Camera---在子相机之间进行,一系列混合和剪辑操作.----激活的时候,执行一个指令列表.第一台相机,然后接下来的相机,适合拍摄动画剪辑.和时间轴本身的功能类似.
参考文章:https://light11.hatenadiary.com/entry/2019/07/24/221418