微信小游戏开发的市场前景与创新策略探讨
936
2022-10-07
Unity2017版本TimeLine& Cinemachine 技术
Unity2017.1版本中推出了全新的Timeline技术。Timeline不仅仅只是一个可被游戏行业应用的工具,它可以为各个行业(影视制作、广告、建筑等)的互动内容开发者提供支持。下面本人就TimeLine &Cinemachine 以及Frame Recorder等三个方面简介一下相关技术,希望大家能有所收获。一: TimeLine 时间线
是一种影视动画与游戏强交互内容的开发工具。一开始的开发目的仅仅是为了游戏中“转场动画”而设立的开发工具,但是后来随着开发的进展开发人员发现可以不断加入更多的功能,使其更加的强大。TimeLine就像导演一样在Unity中控制序列、使用真实世界相机的设置来合成镜头、自动跟踪指定位置。
目前基于Unity2017.1版本,总结Timeline功能可以分为如下四部分:
预渲染过场动画(类似3DMax 、Maya软件中的预渲染)实时渲染过场动画影视制作(FrameRecorder)可交互动画片段(timeline基于assets, 可被重复使用)不仅仅限于游戏使用。
虽然TimeLine 随着版本的提升,一定会不断加入新的功能实现,但是目前(2017年)其主要作用还是做“过场动画”(或者说“转场动画”)。 TimeLine 的操作界面类似 时间线,但是本质不同是它可以控制模型、粒子、音频、摄像机镜头、脚本等诸多内容,甚至可以开发完整游戏,见图1_1所示。
图1_1 本章配套演示项目TimeLine截图
与TimeLine 技术配合使用的还有 “Cinemachine”插件(高级虚拟摄像机系统)、“FrameRecorder“帧录制工具。 前者是虚拟摄像机系统,提供了丰富功能的影视专业级场景跟踪与拍摄控制技术。后者直接把TimeLine工程场景效果输出到自定义格式贴图中,最终利用帧动画技术完成游戏场景之间的动画过度,即“过场动画”。
提示:这里Cinemachine虚拟摄像机系统,以及Frame Recorder 并不是直接集成在Unity编辑器中使用,而是需要分别通过Asset Store 、Github进行-安装后使用。 这样安排是因为Unity公司认为以上功能的实现还不是最终完善版本,更多内容还在研发之中。所有就把完成度高的部分以插件形式提供广大研发人员使用,相信后续版本会做到无缝整合在一起。
因为TimeLine在内的三大技术规范与内容较多,所以笔者决定以小项目演示的形式,分为若干步骤的讲解,带领读者学会其核心技术。首先我们先来了解Timeline 的使用与基本功能
第1步骤:
图1_2 -Mecanim LocomotionStarter 模型
第2步骤:
项目视图中建立TimeLine(鼠标右键弹出窗口àCreateàTimeline),然后拖拽到层级视图中。然后我们建立一个简单的演示场景,在一个平面上建立一个红色Cube与黄色Sphere ,如下图1_3所示
图1_3 建立演示基本场景
第3步骤:
图1_4 建立“Activation Track”轨
图1_5 Cube 赋值给Activation Track轨
第4步骤:
第5步骤:
图1_6 Animation Track 录制动画中
第6步骤:
图1_7 曲线方式调节游戏对象方位动画
第7步骤:
“AnimationTrack”轨除了一般的方位(位移、旋转、缩放)动画制作,更多是用在角色模型上。现在把角色模型DefaultAvatar.fbx (项目位置:Locomotion Setup-->Locomotion-->Animations-->DefaultAvatar.fbx)拖拽到场景视图中。然后再建立一个“Animation Track”,把层级视图中的DefaultAvatar 拖拽到本轨道控制物体中。
第8步骤:
图1_8 添加角色动画剪辑到Timelin
层级视图TimeLine对象所属的Playable Director 组件,改变Wrap Mode属性 为“Loop”可以不断循环重复的预览动画效果直到满意,比较实用。
二: Cinemachine 虚拟摄像机
Cinemachine 是虚拟摄像机系统,使用它可以像导演一样在Unity中控制序列、使用真实世界相机的设置来合成镜头、自动跟踪指定位置。Cinemachine虚拟摄像机功能强大,它即可以单独使用也可以配合Timeline制作功能强大的影视视频特效。
Cinemachine 目前(2017年)需要在AssetStore -,打开Asset Store 窗口搜索关键字“Cinemachine”,然后-安装。(图2_1)
图2_1 -Cinemachine 虚拟摄像机
关于Cinemachine摄像机系统笔者还是以小项目演示形式,分为若干步骤进行讲解。这里为了方便起见,我们接着前面上一节内容的场景继续演示开发。
第1步骤:
图2_2 给“CM vcam1”对象赋值“Look At”属性
第2步骤:
图2_3 Create FreeLook Camera虚拟摄像机
第3步骤:
图2_4 创建Cinemachine Track
目前为止各个摄像机应用还是各自为战,如何有效按照开发意图管理各种摄像机呢?这样我们就想到了Cinemachine 与Timeline 结合使用,即用Timeline 管理各个虚拟摄像机。
第4步骤:
提示:这里的虚拟摄像机实际并不直接输出场景信息,而是建立时给主摄像机加入了“Cinemachine Brain (Script)”脚本组件。Unity从而通过这个组件来管理各个虚拟摄像机,单一时间点只有一个虚拟摄像机把场景信息转发主摄像机,玩家从Game 视图看到最终的影像。
图2_5 完成Cinemachine Track轨编辑
三: Frame Recorder 帧录制器
Frame Recorder 帧录制器是Unity公司开发的一个高级“截图工具”。本质是从Timeline 中获取最终输出场景信息,然后转制为JPEG、PNG、EXR 三种格式的图片与视频信息。具体使用步骤如下:
图3_1 Recorder 窗口
第1步骤:
从Github-FrameRecorder帧录制器。-链接地址:窗口的如下参数赋值,它是录制输出信息内容的关键:
Output format:输出格式(JPEG、PNG、EXR)选择Output Path: 输出路径File Name: 输出文件名称
第4步骤:
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~