请选择 进入手机版 | 继续访问电脑版

查看: 2279|回复: 1

[原创] Unity 2017 | 利用Cinemachine实现自动推拉相机

[复制链接]

843

主题

1482

帖子

1万

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
19140
QQ
发表于 2017-8-2 04:29:41 | 显示全部楼层 |阅读模式
Unity提供的Cinemachine工具可用于轻松管理相机,其中包含大量设置相机镜头的功能,能够在Unity游戏或应用中像拍电影那样管理游戏相机。Cinemachine方便易用,是在Unity中制作影视内容的完美工具。Auto Dolly就是Cinemachine其中一个功能,用于模拟真实相机的推拉,“自动”实现最佳镜头感。今天这篇文章就为大家分享如何利用Auto Dolly功能来实现自动推拉相机。

Cinemachine设置

请访问Unity Asset Store资源商店下载Cinemachine工具,该工具需要使用Unity 2017.1.0及以上版本。

1.png


本例采用的示例场景是一个角色在假装打冰球,相机处于锁定状态已覆盖整个场景,现在这个场景看起来不够生动。下面就利用Cinemachine的Auto Dolly功能进行改善。


2.gif


创建Dolly相机


将Cinemachine导入Unity工程后,菜单栏会出现Cinemachine项,其中可以设置多个不同类型的相机。点击Create Dolly Camera with Track新建Dolly相机。

3.jpg


点击该按钮后会在场景中加入一些内容并更改相机设置。

4.jpg


Main Camera上的图标表示此相机已带有Cinemachine Brain脚本。在检视窗口中查看脚本:

5.jpg



放置Dolly Track

在相机视图显示内容之前,需要重新放置Dolly Track。将相机移动到合适的视点,重新摆放Dolly Track。

小提示:使用Ctrl+Shift+F快捷键可以将选中对象移动到当前场景视图内相机的位置与朝向。


添加路径点


下面为Dolly添加路径点,本例中路径点位于屏幕最左侧,您可以根据实际需求添加,无需按照特定顺序摆放。点击检视窗口Cinemachine Path脚本上的 “Add a waypoint to the path”按钮添加路径点。

6.jpg


每个路径点都与Dolly Track的坐标有些许偏移。本例的第一个路径点将Z坐标设为0,让其与Dolly Track的起点对其。

7.jpg


朝向目标

首先来看看CM vcam1对象,它是场景中的虚拟相机。Cinemachine使用该对象来决定相机位置与行为。场景中可以拥有多个虚拟相机,并在各相机之间平滑地切换,这也是Cinemachine的一大亮点。

本例仅使用一个虚拟相机,它可以按照Dolly路径移动。首先将虚拟相机设为固定相机,本例中希望角色永远是焦点,所以将虚拟相机的Look At字段设为角色模型:

8.jpg


现在效果如下:

9.gif


如上图所示,现在的相机镜头更加有趣 ,它跟踪角色并保证角色位于视野中央。Cinemachine会让角色一直位于中间的矩形框内。调整虚拟相机上的属性,可以看到矩形框也会随之调整。


完善路径

要想让Dolly正常工作,还需添加另一个路径点,新增路径点后更改其X坐标值,重新设置Dolly Track的位置,让两端与冰湖中心距离一致。

10.jpg


跟踪目标

现在运行还看不到效果,因为相机还未设置跟踪行为。选中虚拟相机后将Follow字段同样设为角色。

11.jpg


并启用虚拟相机上的Auto Dolly属性。

12.jpg


现在运行可以看到相机跟随Dolly路径移动,并随时跟踪玩家。效果如下:

13.gif


场景视图中可以看到相机在随着路径移动:

14.gif


现在角色镜头已经不错了,如果还想追踪冰球要怎么做呢?可以利用Cinemachine TargetGroup组件来实现。新建游戏对象并添加Cinemachine TargetGroup组件:

15.jpg


该组件可以指定多个目标对象,本例中有角色与冰球两个目标。还可以为角色添加权重,让其处于相机视野的机会更多。

16.jpg


将带有TargetGroup组件的对象替换之前虚拟相机上的Look At与Follow字段,即可更换相机朝向与跟随的目标。

17.jpg


最后效果如下:

18.gif


结语

本文示例仅为大家分享了Cinemachine功能的冰山一角,但已足以展示Cinemachine强大的相机特效,无需编写代码即可轻松操控相机。如果大家正在使用Unity 2017,不妨试试Cinemachine。我们还会为大家分享更多Unity 2017相关的教程在Unity官方中文社区(unity3d.cn),请保持关注。

0

主题

38

帖子

350

贡献

初级UU族—3级

Rank: 3Rank: 3

积分
350
发表于 2017-8-2 07:00:59 | 显示全部楼层
场景资源可以从哪里获得?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表