【Unity-Cinemachine相机】Cinemachine Brain属性详解

在Package Manager中下载Cinemachine

创建一个Virtual Camera,然后会发现Main Camera后面多出了个标志,而且属性也不能再修改了

因为绑定了CinemachineBrain,它会读取场景中某个虚拟相机的配置,并以此配置来控制相机的行为,如果要修改相机视野、位置之类的属性,必须到虚拟相机这里修改

可以在场景中定义任意数量的虚拟相机,并随时在这些虚拟相机之间切换

Cinemachine Brain相关属性

Live Camera:可以看到正在使用哪一个虚拟相机的配置

Live Blend:指的是当前的虚拟相机的切换过程,当在游戏中从虚拟相机一转换到虚拟相机二

Show Debug Text:显示Debug文本,勾选后可以在Game视窗看到属性一和属性二,就是当前使用的相机和正在转换的虚拟相机

Show Camera Frustum:显示当前的视锥体,视锥体是相机的可视范围

lgnore Time Scale:表示相机的行为是否受时间缩放值的影响

World Up Override:相机在运镜的时候会有一个上方的概念,这个默认的上方就是指世界坐标系下的"上",也就是世界坐标系下y轴的方向。如果相机本地坐标系的y轴和世界坐标系下的y轴之间的夹角大于90度时,相机会重设自己的方向,让本地的y轴和指向"上方"的那个轴之间的夹角小于90度(俯视类的游戏经常出现这种问题)。如果我们不需要这种重置的方式,可以放置一个游戏对象,使用这个游戏对象的y轴来代替相机默认的"上方",也就是游戏对象的y轴来代替世界坐标系下的y轴

Update Method:指虚拟相机的行为与什么同步

  • Fixed Update:就是与物理引擎同步

  • Late Update:就是与画面绘制同步

  • Smart Update:就是Unity会根据实际情况帮我们选择如何同步

  • manual Update:就是我们自己编写代码控制相机的行为的同步时间

Blend Update Method:指的是两个虚拟相机之间的切换行为与什么进行同步。

  • Fixed Update:是在引擎中可以设置的更新时间,默认0.02秒。

  • LateUpdate:是物理引擎当前帧的所有update执行完成后顺序执行的帧,一般针对相机的位移要放在这里

Default Blend:默认的相机切换模式,后面的s是相机切换的时间

  • Cut:瞬间切换,就是两个相机切换在一瞬间,没有过渡

  • Ease In Out:从一个相机慢慢的加速切出,向另一个相机慢慢的减速切入

  • Ease In:匀速切出,慢慢的减速切入

  • Ease Out:慢慢的加速切出,匀速切入

  • Hard In:加速切入

  • Hard Out :快速的加速切出

  • linear:全程匀速切换

  • Custom:自定义切入切出曲线

Custom Blends:建立一个资源文件,在资源文件里可以针对不同的相机定制不同的切换模式

例:从ANY CAMERA相机到Top Down Cam相机,切换风格是均匀切出,慢慢的减速切入,平滑事件为2s

Events:相机的一些事件触发

1、Cut Event:相机之间发生了cut,也就是瞬间切换时要触发的事件

2、Activated Event:相机之间要发生的切换,但不是瞬间完成的cut,那么在切换的第一帧时所要触发的事件

相关推荐
与火星的孩子对话8 小时前
Unity3D开发AI桌面精灵/宠物系列 【六】 人物模型 语音口型同步 LipSync 、梅尔频谱MFCC技术、支持中英文自定义编辑- 基于 C# 语言开发
人工智能·unity·c#·游戏引擎·宠物·lipsync
虾球xz12 小时前
游戏引擎学习第293天:移动Familiars
c++·学习·游戏引擎
敲代码的 蜡笔小新13 小时前
【行为型之访问者模式】游戏开发实战——Unity灵活数据操作与跨系统交互的架构秘诀
unity·设计模式·c#·访问者模式
小羊Linux客栈15 小时前
自动化:批量文件重命名
运维·人工智能·python·自动化·游戏程序
Magnum Lehar21 小时前
3d游戏引擎EngineTest的系统实现3
java·开发语言·游戏引擎
动感光博1 天前
Unity序列化字段、单例模式(Singleton Pattern)
unity·单例模式·c#
虾球xz1 天前
游戏引擎学习第290天:完成分离渲染
c++·人工智能·学习·游戏引擎
虾球xz1 天前
游戏引擎学习第285天:“Traversables 的事务性占用”
c++·学习·游戏引擎
虾球xz1 天前
游戏引擎学习第280天:精简化的流式实体sim
数据库·c++·学习·游戏引擎
FAREWELL000751 天前
Unity基础学习(十五)核心系统——音效系统
学习·unity·c#·游戏引擎