- 1.基础知识与准备工作
- 1.1.什么是 CG
- 1.2. 三维图形的基本概念
- 1.3.Blender软件背景介绍
- 1.4.Blender 功能介绍
- 1.5.使用 Blender 创作的作品
- 1.6.计算机配置要求
- 1.7.Blender 下载、安装和基本设置
- 1.8.插件
- 2.渐进式入门小案例
- 2.1.积木基础版(一)
- 2.1.积木基础版(二)
- 2.1.积木基础版(三)
- 2.2.积木中级版(一)
- 2.2.积木中级版(二)
- 2.2.积木中级版(三)
- 2.3.积木进阶版(一)
- 2.3.积木进阶版(二)
- 2.3.积木进阶版(三)
- 2.3.积木进阶版(四)
- 2.3.积木进阶版(五)
- 3.Blender 基本逻辑
- 3.1.Blender 整体基础逻辑
- 3.2.用户界面逻辑
- 3.3.数据块
- 3.4.操作逻辑
- 3.5.快捷键逻辑
- 3.6.文件逻辑
- 3.7.节点逻辑
- 3.8.大纲视图逻辑
- 4.基础案例
- 4.1.基础知识
- 4.2.金币制作——建模
- 4.3.乒乓球拍——建模和材质
- 4.4.Low Poly 小房子——插件
- 4.5.孟菲斯风格场景——材质
- 4.6.三渲二场景——材质
- 4.7.写实做旧物体——材质
- 5.动态案例
- 5.1.金币动画——关键帧动画
- 5.2.粒子效果
- 5.3.膨胀字体——布料模拟
- 5.4.破碎的鸡蛋——Cell Fracture
- 6.特色功能介绍
- 6.1.蜡笔工具的使用——Grease Pencil
- 6.2.雕刻初体验
- 6.3.几何节点
图 6-1 所示为本节的目标成果。本节案例使用之前制作的金币模型来制作一个简单的动画,主要是展示如何通过手动添加关键帧的方式制作动画。 学习本节案例前可以复习一下 4.2 节的内容。
一.动画设计
在上一章中制作过金币模型。金币在游戏中一般作为奖励出现,玩家触碰即可获得金币,因此金币需要比较显眼,让玩家能够注意到。首先是金币的颜色和材质比较闪亮,其次是金币会有旋转的动画,这样更有趣、更有游戏性。使用 Blender 完全可以制作出游戏金币的动画。
制作动画之前首先要设计动画,参考现有游戏,游戏金币动画可以分为两个部分,即旋转动画和上下移动动画,也就是金币一边旋转一边上下移动,如图 6-2 所示。有了想法之后可以画分镜图,但本节动画比较简单,想好了就可以直接开始制作了。
二.旋转动画
1. 模型准备:制作金币的旋转动画,可以打开之前保存的 Blender 文件,也可以新建一个文件导入之前导出的 OBJ 格式的模型 ( 金币模型的简易形变修改器一定要删除 )。将模型旋转成竖起来的状态,按 R 键(旋转)、X 键(x 轴)并输入 90(角度)后按 Enter 键确定,或者在侧边栏的“条目”中的 X 处输入 90°,如图 6-3 所示。金币竖起来之后可以选中金币并按快捷键 Ctrl+A,单击“旋转”,即可应用旋转(“物体”菜单 > 应用 > 旋转),应用之后侧边栏的“条目”中旋转 X 就归零了,如图 6-4 所示。这样就代表模型永久旋转了,即使清除了保存的旋转信息,其他变换参数也同样可以应用。
2. 动画准备:首先建议切换到 Animation(动画)布局,如图 6-5 所示。底部的动画摄影表 用于处理关键帧,是制作动画最关键的地方。两个 3D 视图,左侧的用于预览动画,右侧的用于制作动画。切换布局后视图着色方式会恢复默认的状态,也就是灰色的材质。制作动画之前要想好模型应该如何动,本小节动画金币只需要围绕 z 轴旋转即可,如图 6-6 所示。
3. 关键帧分析:开始制作之前需要想好要用几个关键帧,金币旋转一周是 360°,笔者预计 25 帧转一圈,预计的关键帧如图 6-7 所示。如果想要金币转得慢,可以把第二个关键帧设置到更后面。
4. 插入第一个关键帧:首先确保播放头在第一帧,然后选中金币,打开侧边栏 > 条目,将鼠标指针移入“旋转”参数处,按 I 键或者右击并在快捷菜单中单击“插入关键帧” ,即可给旋转参数在第一帧插入关键帧,如图 6-8 所示。注意观察插入关键帧后不仅参数会变色,动画摄影表中的关键帧处也会出现黄色圆点,如图 6-9 所示。
5. 插入第二个关键帧:把播放头拖动到第 25 帧处,绕 z 轴旋转 360°,再插入一次关键帧(I),如图 6-10 所示,然后跳转到起始帧 ,单击播放按钮 即可看到金币旋转的动画,如图 6-11 所示。Blender 会根据关键帧自动补全关键帧之间的参数,让金币的旋转可以自然地从 0°过渡到 360°。动画会自动循环播放,需要手动暂停和回到第一帧。
6. 设置动画场景:默认的场景总共有 250 帧,本节动画只需要 75 帧即可。在输出属性中找到“帧范围”,把“结束点”改为 75,如图 6-12 所示。默认渲染的动画帧率是 24 帧 / 秒,动画的常用帧率是 25 帧 / 秒,同样需要修改,如图 6-13 所示。
这样输出的动画就是 3 秒,一秒 25 幅连续图像,一共 75 幅图像。设定好帧范围后,播放到第 75 帧动画就会回到第一帧重新
播放了,如图 6-14 所示。现在的时间轴上 0 ~ 75 帧之外的地方都是灰色的状态。
7. 循环关键帧:现在金币只在 0 ~ 25 帧内旋转了 360°,但场景总共有 75 帧,如果到第 50 帧时插入一个 720°的关键帧,到第 75 帧时插入一个 1080°的关键帧,金币就会一直旋转。但如果有 10000 帧呢?其实只需让关键帧循环即可。首先需要把动
画摄影表”切换到“曲线编辑器” ,如图 6-15 所示。曲线编辑器通过曲线来控制关键帧之间过渡的方式,然后选中金币模型后打开曲线编辑器中的侧边栏,单击曲线编辑器内任意区域,以保证焦点在曲线编辑器中,再按 N 键打开侧边栏,如图 6-16
所示。
在选中金币模型的状态下即可看到关键帧之间的曲线,如果看不到曲线可以用鼠标滚轮缩放视图,或者按 Home 键框显全部,然后选中第二个关键帧,在侧边栏中打开修改器,添加一个循环修改器就可以让关键帧永远循环下去,如图 6-17 所示。现在不论场景有多少帧,金币都会一直循环关键帧。这里对关键帧添加循环修改器后曲线会变直,是正常现象。
金币的旋转动画到此就制作完成了。前 25 帧摆放到一起如图 6-18 所示,眼睛快速从左到右浏览图片即可利用视觉残留看到动画般的效果。
三.跳跃动画
1. 关键帧分析:金币只是旋转还是单调了点,上下跳动会更生动,只需要给金币的 z轴数值插入关键帧即可。笔者预想的是向上跳动,所以需要 3 个关键帧,关键帧 1 是在原地,关键帧 2 是跳上去后,关键帧 3 则是回到原地,如图 6-19 所示。如果只有前两个关键帧,金币是不会回到原位的,所以需要 3 个关键帧。
2. 首尾关键帧:回到第一帧,选中金币,可以跟之前一样在侧边栏“条目”的位置处右击以插入关键帧,但是使用快捷键会更加方便。直接在 3D 视图中按 I 键即可打开插入关键帧的菜单,单击“位置”即可给位置参数插入关键帧,如图 6-20所示。第一个关键帧金币在世界原点,第三个关键帧同样也是在原点,所以直接复制第一个关键帧即可。首先切换回“动画摄影表” 然后选中“Z 位置”的关键帧(按住鼠标中键即可拖动视图),按快捷键 Shift+D,然后移动鼠标指针到第 25 帧处单击确定即可,如图 6-21 所示[也可以使用 Ctrl+C(复制)和 Ctrl+V(粘贴)快捷键去复制关键帧]。这样首尾关键帧就完成了。
3. 中间关键帧:中间的关键帧用于决定金币向上移动的高度和时机,如果把关键帧放在第 10 帧就代表 0 ~ 10 帧向上移动,10 ~ 25 帧降回去,也就是向上移动时间短、速度快,下降时间长、速度慢。这是一种常见的动画运动模式——先快后慢,也是笔者想要的效果。
首先把播放头拖动到第 10 帧,然后把金币向上移动 0.5m 再插入位置关键帧,如图 6-22 所示。如果移动后不插入关键帧,拖动播放头,金币会回到原位,此时再播放动画即可看到金币上下移动的动画。
4. 弹跳效果:现在的金币移动动画基本是匀速的,直上直下,现实中东西掉到地上是会弹起来的,在动画制作中也可以参考并实现这一效果。首先切换到“曲线编辑器”模块,可以看到左侧的数值最高有 400,如图 6-23 所示,这是因为金币旋转 360°,数值很大,而 Z 位置只移动了 0.5m,是非常小的数值,所以现在视图里看不到 Z 位置的关键帧曲线。选中“Z 位”,
按数字小键盘的 . 键即可把视图缩放到 Z 位置的关键帧处,然后缩放视图直到关键帧曲线比较明显,如图 6-24 所示。
选择中间的关键帧,按 T 键(“关键帧”菜单 > 插值模式),单击“动态效果”中的“弹跳”,如图 6-25 所示。给关键帧添加弹跳效果后曲线如图 6-26 所示。插值模式是两个关键帧之间过渡的方式,可以手动调节也可以使用内置的效果。设置弹跳插值模式后,金币落下的时候就会有弹跳的效果了。
下面给“Z 位置”添加循环修改器。首先可以在左侧把其他关键帧都隐藏,否则会选择到重叠在一起的关键帧,然后再选择“Z 位置”的第三个关键帧,添加一个循环修改器即可,如图 6-27 所示。
金币的旋转和跳跃动画到此就制作完成了,前 25 帧摆放到一起如图 6-28 所示。
四.输出动画
1. 导出动画:动画制作好后可以导出成文件,文件可以被导入其他软件中进行其他操作,例如导入游戏引擎中使用。常见的支持动画的文件格式有 FBX、Alembic 等,这两个格式 Blender 都支持。以FBX 为例,执行文件 > 导出 >FBX 命令即可导出 FBX 文件,如图 6-29所示。右侧有一些选项,场景中有多个物体时,需要勾选“选定的物体”,如图 6-30 所示。这样就只会导出选中的物体,否则会把场景中所有物体都导出。默认的 FBX 导出选项就是包含动画的,找到合适的文件夹,单击“导出 FBX”按钮即可导出带有动画的 FBX 文件。
使用 Windows 10(及以后)系统自带的 3D 查看器打开刚才导出的 FBX 文件就可以看到动画了,3D 查看器用来预览动画非常方便,如图 6-31 所示。
2. 渲染动画:渲染动画分为直接输出视频和输出图片序列。视频是 MP4 等格式的经过编码的视频文件;图片序列跟渲染图像一样,只是把每一帧都渲染出来,例如当前的金币场景就会渲染出 75 幅图像。大部分情况是渲染出图像序列的,这样更方便放到调色、剪辑等后期软件中使用。因为视频文件是经过压缩的,而输出的图像保留了最原始的数据。
本节案例不包含材质和灯光内容,在输出之前,可以根据喜好自行添加材质和灯光。输出图像序列同样也需要用摄像机构图,设置好分辨率,确定帧范围和帧率,如图 6-32 所示。然后在输出属性中找到“输出”, 设置输出的路径和文件名,文件格式默认是 PNG,大部分情况都够用了。输出设置如图 6-33 所示, 只有在此处设置好输出路径才能保存渲染出来的动画。
一切设置完成后,执行渲染 > 渲染动画命令即可。渲染动画等于一张一张渲染图像,所以需要花费更多的时间,在此期间最好不要使用计算机,直到渲染完毕。渲染完毕后就得到了 75 个连续文件名的图片文件,如图 6-34 所示。
3. 重复利用动画:在 Blender 中,动画同样也属于“数据块”,在“动画摄影表”模块中还有多个子模块。切换到动作编辑器,如图 6-35 所示,可以看到金币当前的动画叫作“柱体 Action”,这叫作“一个动作”,一个动作就是一个数据块。当前这个动作包含旋转和移动,因为所有物体都有这两个属性,所以也可以直接给其他的物体使用。添加一个立方体(任意物体都可以),选中立方体,在动作编辑器中浏览并单击“柱体 Action”,即可把“柱体 Action”赋予立方体,如图 6-36 所示。此时播放动画可以看到球体也在旋转并跳跃了。可以重复利用数据是数据块的一大优势,可避免重复操作。
本节案例只是简单介绍了入门的动画知识。动画可分为角色动画、动态图形、特效等多种类型,需要用到的技术也不同。制作动画需要学习的知识点太多,要长年累月不断地学习和积累。