怎么把unity的相机设置为子对象?

怎么把unity的相机设置为子对象?,第1张

添加一个GameObject就可以把unity的相机设置为子对象。 相机跟随一般写在生命周期LateUpdate中最简单,无代码,固定距离,固定视角,最简单的就是 直接 把主相机作为 Player 角色的子物体,并自行固定好相机的位置和角度,优点是使用方便。缺点是使用不灵活,相机转动死板,体验不好,相机瞬间移动位置。代码控制,固定距离,固定视角,对1进行改进,设置一个空的GameObject ,并且与 Player 的旋转和位置保持一致,然后将 主相机 设置成该 GameObject 的子对象。这种做法和方案 1 相似。using UnityEngine。所以,添加一个GameObject就可以把unity的相机设置为子对象。

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,会显示优先级高的。另一种是优先显示激活状态的相机,可以通过激活失活虚拟相机进行显示切换。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11306113.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存