前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Unity虚拟相机Cinemachine教程[通俗易懂]

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

作者头像
全栈程序员站长
发布2022-09-01 14:10:11
4.2K0
发布2022-09-01 14:10:11
举报
文章被收录于专栏:全栈程序员必看

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

准备

在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.cn/140276.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 准备
  • 1.CinemachineBrain组件
  • 2.2D虚拟相机
  • 3.3D虚拟相机
  • 利用Timeline控制虚拟相机
    • 创建Timeline
      • 关于body和aim
        • Target Group Camera
          • 镜头震动
          相关产品与服务
          图像处理
          图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档