本文节选翻译自Gamasutra的博文

《Dead Cells》,通过3D工具制作2D动画

我的名字叫Thomas Vasseur,曾经是《Dead Cells》唯一的美术设计,负责这个游戏的全部美术设计和动画的制作,包括《Dead Cells》的艺术指导,人物,怪物,动画,特效以及大部分背景。直到,Gwenae lMassé 的出现,他是《Dead Cells》的另外一名美术设计师。 然而,由于人手不足,是我们行业中的一个普遍现实,我想各位可能有兴趣了解我是如何在独自奋斗中保持理智的。假设我还活着,所有这一切都不仅仅是幻觉。

快速设计定格动画和新模型的3D工作流程

我们从绘制一个非常基本的2D像素模型表开始,我将它作为在3DS Max中创建角色的基础及其骨架,然后我以filmbox格式导出它。

但是当角色的游戏高度只有50像素时,在3D模型上花费大量的时间和精力似乎相当低效。

于是,我为这个非常具体的任务开发的一个小型自制程序,渲染网格的尺寸非常小,没有锯齿,这能给我们像素化的外观。

现在,是时候让模型移动了。《Dead Cells》的动画在关键帧的设计上有点像2D动画。曾经,动画令人信服并且用尽可能少的帧正确计时,我在关键帧之前或之后添加插值帧,绝不在中间添加。因此,我们的攻击动画本质上是姿势到姿势的动画,我们利用VFX来实现运动,冲击和力量的手感。

此时,大部分工作已经完成。我们将使用3D骨架制作的动画的每个帧导出为png及其法线贴图,以此允许我们使用基本的卡通着色器渲染卷。

将整体导出为一系列帧也允许我们进入一个或两个混合模式以增加令人震惊的效果。

当然,游戏程序员无法在第一时间得到正确的东西,他们总是在改变主意。在这种情况下,我处理的过程非常简单,只需很短的时间。

如果是时间的问题,那么在时间线中移动关键帧就可以了,当然想要改变姿势也不是问题。

假设这种武器的力量表现失衡了,我们会放慢攻击动画的速度来平衡力量的表现。

使用3D软件的话,只要移动关键帧,并将姿势调整到新的时间点就可以了。

与传统的2D相比,这种3D工作流程还有两个主要优势。

第一,如果我想将一些新元素添加到旧模型中。例如,二手手游购买平台为这个人物添加一件盔甲,我只需将这些部件添加到3D模型。

第二,3D建模能够在创建新角色时,重复使用以前设计的部件。这可能是一个最有用的小技巧,它让我节省了数百小时的工作量。

原因

我于2008年进入游戏行业,二手手机靓号买卖为那些已经消失了的小公司工作了数年。2013年,当我被Motion Twin聘用时,我才开始绘制像素艺术,在那里我参与了五个游戏的制作:《Brutal Teenage Crisis》、《Green Witch》、《FAFI 360》、《Uppercup Football 》和《Monster Hotel》。

我们在2015年开始研发《Dead Cells》的第一代,那是我第一个有这种规模的项目。我可以无耻地承认,我至今依然不是专业的动画设计师,我还是个新手。但是回顾过去,会对《Dead Cells》的最终呈现产生众多积极的影响,可能是因为我从未落入“老派像素艺术风格”的常规套路中。

为了弥补缺陷,达到团队所要求的质量,我们必须找到一个可以生产好看的像素作品的工作方式、渠道或任何真正的东西,而不是需要手工绘制每一个镜头,这会让美术设计师在这个过程中投入不合理的时间和精力。

这个工具必须能完成以下要求:

1、各种各样的背景与美丽的光影和风景

2、有影响力的动画让战斗有紧张的节奏感

3、大量的怪物

4、具有丰富的玩法的武器

我上面描述的《Dead Cells》的3D 工作流程实际上源于另一个项目。

2015年,我和同事一起进入了Ludum Dare 32。我们想出了一款名为《ScarKrow》的游戏,一个用了72小时做出原型的游戏,这也许就是我们想制作一款快节奏游戏的第一个信号。

然而在制作《ScarKrow》的过程中,我耗费了很长的时间来用Flash绘制2D动画。最后,结果并没有达到我们的预期。

Motion Twin一直是鼓励实验的公司,即使没有任何结果。在Ludum之后,我们花了3个星期在ScarKrow上工作,此时我已经知道我无法跟上传统工作流程的步伐。

于是我从《King of Fighters》、《Blazblue》、《Guilty Gear》中汲取灵感,决定充分利用3DD动画。

这种方法给了我们几个优点:

1、无需重绘每一帧

2、可以在各种模型上重复使用相同的动画

3、自动生成插值帧以获得平滑的动画

4、快速轻松地重做以配合游戏玩法

通过这种方法,我们能够得到达到30Fps的动画,它为我们节省了大量时间。

在使用与《Dead Cells》相同的工作流程之前,我们需要解决几个问题。

首先,如果使用ScarKrow,我不得不在所有框架上手工绘制所有阴影,这是一个冗长的过程,我们通过设计了一个系统来解决这一问题。

与ScarKrow相反,《Dead Cells》是一款像素艺术游戏,因此我们还必须构建一个“像素化”角色的工具。

结果

回想起来,这个工作流程最大的优势就是可以轻松地对一些动画进行重做。

《Dead Cells》令人满意和紧张的战斗的核心原因是,其战斗是建立在力学的基础上的。在之前我参与过的项目中,我用传统的方式来做动画。一旦完成,如果想要修改这些动画,就必须重做。这太费时了,我们没有那么多时间重做所有需要修改的动画。这就导致了游戏最终呈现出来的效果大打折扣。

但是在《Dead Cells》中,当我们实装一个新武器时,我们可以根据游戏社区的反馈意见,在几分钟内对动画进行几十次的调整。

使用3D工具制作2动画时也存在问题

我们必须找到一种在低分辨率像素动画中渲染3D模型的方法。

我们使用单元格着色来解决这个问题,并且没有任何抗锯齿,但我们仍然没有找到快速渲染闪烁像素的解决方案。虽然我们可以手工操作,但是我们的重点是如何快速完成这项工作。

我希望《Dead Cells》在动画方面的工作流程会以某种方式为您的下一个项目提供帮助。尽管这里的主要内容可能不包含我们工作中的细节,但仍可能对项目的成功产生影响。

《Dead Cells》,通过3D工具制作2D动画相关推荐

  1. Vyond制作2D动画学习教程

    Vyond为2D动画提供了极其简单的分解视频创建过程. 你会学到什么 课程获取:Vyond制作2D动画学习教程-云桥网 您将学习如何为2d动画制作画外音 您将学习如何使用Vyond轻松创建精彩的动画视 ...

  2. Unity-ShaderGraph制作2D动画精灵发光

    Unity-ShaderGraph制作2D动画精灵发光 项目设置 准备素材 编写ShaderGraph 总结 项目设置 普通的2D工程,在PackManager上下载Universal RP这样能安装 ...

  3. [独立游戏]用3D模型做2D动画,像素风也可以独当一面

    像素风 对于 玩家来说 是别具一格,可以接受的. 好游戏,并不意味着必须 要多高的模型,多好的写实的 场景. 用简陋的3D模型,可以减少成本.再渲染成2D动画,像素风格.反而 无心插柳柳成荫,成就了 ...

  4. unity 制作2d动画

    把图片导入到unity工程中,直接拖入到Assets->Sprites文件下.注意Inspector Texture Type 选择Sprite(2D and UI) 首先在场景中创建一个空的g ...

  5. 3D与2D动画哪一个更容易?

    如果你想深入动画世界,你将不得不面对一场合理的冲突:3D 与 2D动画哪个更容易? 2D和3D其实都有不同风格的动画.根据您的喜好,您的艺术背景,以及您拥有的资源(无论是时间还是金钱,您可以花在设备和 ...

  6. 关于Unity 2d动画实现

    本文转自:http://gamerboom.com/archives/76709 本文为游戏邦/gamerboom.com编译,拒绝任何不保留版权的转载,如需转载请联系:游戏邦 作者:Alex Ros ...

  7. unity 2D动画不补帧

    因为美术成本问题,想利用unity的动作系统自己制作2D动画,把人物和武器分开,以后也方便做武器替换 制作过程中发现一个很奇葩的问题,因为2D动画图片少,武器是通过录制方式录制的,U3D自行补帧导致武 ...

  8. unity 程序获得焦点_Mac上的2D动画制作工具Moho Pro 12 for Mac独特的动画程序

    Moho Pro 12mac版是一款运行在Mac端的2D动画制作软件,非常适合寻求更有效的传统动画替代品的专业人士.凭借直观的界面和强大的功能,如Smart Bones™,Smart Warp,Bez ...

  9. 《公主连结》交互设计师:如何用TV画手法制作2D技能动画

    上个月,日本CEDEC开发者大会上,Cygames交互设计师小组工藤瑛子女士以"TV动画与游戏2D技能动画的结合"为题,针对<公主连结Re:Dive>中用到的制作手法进 ...

最新文章

  1. 电脑服务器高配置和高性能,为高性能工作站服务 超算系统配置推荐
  2. AIX下镜像制作与取消,更换硬盘
  3. 【 FPGA 】序列检测器的Moore状态机实现
  4. adf检验代码 python_第22期:向量自回归(VAR)模型预测——Python实现
  5. Nmap UDP扫描缓慢问题探究(无结果)
  6. tomcat(14)服务器组件和服务组件
  7. oracle 序列验证脚本,oracle 生成序列脚本
  8. MySQL安装错误——Access denied for user 'root'@'localhost' (using password: YES)
  9. Xmind快捷键笔记
  10. LearnOpenGL之OpenGL特性
  11. Python大佬用20行代码带你打造一个微信聊天机器人(附代码)
  12. 999999数码管显示c语言,定时器1中断动态刷新从999999~0倒计时,数码管只显示有效位的C语言程序怎么编?...
  13. 南阳OJ 题目97 兄弟郊游问题
  14. 仙人掌之歌——大规模高速扩张(1)
  15. HDU 2154跳舞毯
  16. 2017ccpc哈尔滨站部分简要题解
  17. 基因表达相关性——笔记
  18. OTA分类 OTA升级方式(乒乓、压缩、差分)
  19. 无线网卡无法获取dhcp服务器,无线网络无法获取网络IP地址
  20. mysqldb python linux,Linux下安装 MySQLdb模块

热门文章

  1. 关于使用U盘制作简单windows开机加密狗
  2. 用antv-G2实现雷达图
  3. MindSpore如何实现自定义训练
  4. 【总结】PHP常见面试题汇总(一)。。。
  5. 【蓝牙串口无线烧写程序】适用于STM32F405RG的Bootloader
  6. yum安装报错:ImportError: No module named urlgrabber.grabber
  7. Java8 Stream:两万字博文教你玩转集合的筛选、归约、分组、聚合
  8. 【lifelines中文wiki】生存分析简介
  9. PseudoSeg: Designing Pseudo Labels for Semantic Segmentation阅读笔记
  10. Entrust - Laravel 用户权限系统解决方案 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区 - Powered by PHPHub...