Unity虚拟相机Cinemachine教程[通俗易懂]

Unity虚拟相机Cinemachine教程[通俗易懂]准备在PackageManager中安装Cinemachine包。1.CinemachineBrain组件相当于虚拟相机的总管理。参数介绍:LiveCamera:当前显示的相机LiveBlend:过度相机时显示进度ShowDebugText:在Game视窗里显示当前使用的相机ShowCameraFrustum:显示视锥IgnoreTimeScale:是否受TimeScale影响WorldUpOverride:自己设置覆盖Y轴防止万向节死锁。UpdateMeth

大家好,又见面了,我是你们的朋友全栈君。

准备

在PackageManager中安装Cinemachine包。

1.CinemachineBrain组件

相当于虚拟相机的总管理。
在这里插入图片描述
参数介绍:
Live Camera:当前显示的相机
Live Blend:过度相机时显示进度
Show Debug Text:在Game视窗里显示当前使用的相机
在这里插入图片描述
Show Camera Frustum:显示视锥
Ignore Time Scale:是否受TimeScale影响
World Up Override:自己设置覆盖Y轴防止万向节死锁。
Update Method:Update方法,选择默认的SmartUpdate即可。
Blend Update Method:相机混合时的Update方法。
Default Blend:混合时的曲线,比如线性或者Ease之类,也可以自定义。
Custom Blends:自定义混合方案。
Events:虚拟摄像机激活时将触发此事件。如果涉及混合,则事件在混合的第一帧时触发。

2.2D虚拟相机

通过选择菜单栏中的Cinemachine可以创建我们需要的虚拟相机。(注意相机要改为Orthographic)
参数介绍
Status Live:勾选solo意味只使用这一个相机。
Game Windows Guides:是否在游戏视窗显示线框
在这里插入图片描述

Save During Play:勾选后可以在运行时保存组件的修改。
Priority:根据数值大小决定优先显示哪个相机,越大的优先级越高
Follow:相机跟随目标
Look At:看向目标,相机不动(2D基本不用,大多数用Follow)
Mode Override:相机模式选择
Ortho Filed:Orthographic模式下视野大小
Dutch:z轴旋转
Damping相关(阻尼):镜头缓动效果
ScreenX和ScreenY:镜头偏移
Dead Zone(死区):死区内镜头不会一直跟随。
Soft Zone(软区):在软区内镜头会缓慢跟随目标。超出软区相机会瞬移跟随。
Unlimited Soft Zone:不限制软区(去除红色部分)
下图中黑色部分为死区,蓝色部分为软区,超出红色会瞬移。
在这里插入图片描述
Lookahead Time:如果设置的话跟随目标点就会朝移动方向偏移,这样做比如在2D游戏中就可以看到更前面的视野。
Lookahead Smoothing:平滑值。
Lookahead Ignore Y:忽略Y轴影响。(2D游戏经常勾选,不然可能会导致镜头不稳)
黄点就是设置了Lookahead后所带来的偏移。
在这里插入图片描述
我们可以通过选择Extensions->AddExtension->CinemachineConfiner来为虚拟相机添加限制。
在这里插入图片描述
在这里插入图片描述
有两种方式,一种是新建一个空物体添加PolygonCollider2D组建调整好大小赋值过来。另一种如下图。
在这里插入图片描述
关于虚拟相机之间的切换我们常用的有两种,一种是设置Priority,会显示优先级高的。另一种是优先显示激活状态的相机,可以通过激活失活虚拟相机进行显示切换。

3.3D虚拟相机

这里只针对与2D虚拟相机的不同之处进行讲解。

参数介绍:
Field Of View:Perspective模式下视野大小
Near Clip Plane:下图部分与相机距离
在这里插入图片描述

Far Clip Plane:下图部分与相机距离
在这里插入图片描述
Noise:相机效果
Noise Profile:效果选择
Amplitude Gain:振幅
Frequence Gain:频率

要用ctrl+shift+f调整相机位置时最好勾选目标相机的solo,不然可能会出bug调整所有相机。

3D镜头限制
在这里插入图片描述
在这里插入图片描述

利用Timeline控制虚拟相机

创建Timeline

我们可以在Window->Sequencing->Timeline打开Timeline面板。如果没有该选项的话可以在Window->PackageManager中进行下载。之后选中场景中物体点击Create即可创建新的Timeline。
在这里插入图片描述
创建后会自带一个Animation Track,并且选中物体上会添加一个Animator。我们暂时用不到直接删除。
我们可以右键左侧或者点击加号创建Cinemachine Track。
在这里插入图片描述
创建后需要给Track添加一个Cinemachine Brain组件。
在这里插入图片描述
之后直接往Track中拖入虚拟相机即可(或者右键选择Add Cinemachine Shot)。并且可以拖拽模块实现混合效果。
在这里插入图片描述

关于body和aim

body
aim

Target Group Camera

Target Group Camera

镜头震动

镜头震动

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140276.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • js中splice方法_js截取字符串指定字符之后的部分

    js中splice方法_js截取字符串指定字符之后的部分参考:http://www.w3school.com.cn/jsref/jsref_splice.asp如果从arrayObject中删除了元素,则返回的是含有被删除的元素的数组。 vara=[1,2,3];a=a.splice(2,1);//这样写就错了a.splice(2,1);//正确…

    2022年9月16日
  • C++学习(一五九)Qt的场景图Scene Graph

    C++学习(一五九)Qt的场景图Scene Graph例如,假设用户界面包含十个项目的列表,其中每个项目都有背景色,图标和文本。使用传统的绘图技术,这将导致30次绘图调用和类似数量的状态更改。另一方面,场景图可以重组原始图元以进行渲染,以便在一次调用中绘制所有背景,然后绘制所有图标,然后绘制所有文本,从而将绘制调用的总数减少到仅3个。批处理和状态更改减少这样可以大大提高某些硬件的性能。…

    2022年11月1日
  • 《Android应用开发揭秘》连载3

    《Android应用开发揭秘》连载3《Android应用开发揭秘》  书名:Android应用开发揭秘作者:杨丰盛出版社:机械工业出版社ISBN:9787111291954出版日期:2010年3月(1版2次)开本:16页码:515版次:1-2定价:69元豆瓣网讨论地址:http://www.douban.com/subject/4200822/China-pub预订地址:http://www.china-pub.

    2022年6月10日
  • setPositiveButton和setNegativeButton的区别[通俗易懂]

    setPositiveButton和setNegativeButton的区别[通俗易懂]setPositiveButton和setNegativeButton的区别和setNeutralButton的区别三者都是AlertDialog弹出框的按钮,都是封装好的button,只是显示的位置不同,项目中可根据情况选择使用,setNegativeButton一般用于确认,setNegativeButton一般用于取消。newAlertDialog.Builder(MainActivi…

    2022年6月28日
  • LIGHT LIFE 简述

    LIGHT LIFE 简述

    2022年3月13日
  • 计算机vb语言程序设计_vb语言程序设计基础

    计算机vb语言程序设计_vb语言程序设计基础VisualBasic程序设计教程:计算机类语音编辑锁定讨论上传视频《VisualBasic程序设计教程:计算机类》是中国科学技术出版社出版的图书,作者是王东、刘福来。中文名VisualBasic程序设计教程:计算机类出版社中国科学技术出版社定价39.20作者王东刘福来ISBN9787504646798VisualBasic程序设计教程:计算机类内容简介编辑语音《全国高等…

    2022年10月7日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号