小团队能有大制作吗?他们的制作经验让看过的开发者一致称之为“牛”

效率、效果和目标之间的平衡。分享/整理庐阳/光流
今年,第一届Unity Online技术大会在网上举行。与以往相比,本届大会拉长了举办时间,精简了场次,但也有不少干货值得关注。
16日晚,Magic Design Studios创始人杨璐以“小团队,大制作”为主题,分享了他们面对这一课题的制作经验。Magic Studios位于法国,成员来自世界各地,是一支非常国际化的团队。但他们出品的《非常英雄》是一款以西游记为主题的2D横版动作游戏(已登陆Xbox、任天堂Switch、Steam、Win10,手游便携版正在预订中)。
杨在育碧蒙彼利埃工作室工作了11年。从第一次接触《幽灵行动2》到体验《雷曼:疯狂兔子》等大作,逐渐成为市场部艺术总监。五年前,他决定创业。他也把大公司的制作思路带到了自己的小团队,但是他面临的问题是小团队的短缺和大制作带来的要求不匹配。
为了解决这个问题,杨璐和他的团队根据当时的Unity引擎环境定制了很多实用的工具,并在制作层面找到了很多别出心裁的地方,使得游戏《分裂细胞 4》的观感不亚于一些大作。
感谢杨璐的无私分享,绝大多数看了这场直播的开发者直呼“谢谢”“牛X”,希望这些经验能做成教程,沉淀下来。一些哔哩哔哩观众甚至感叹这个问题超出了大纲:“它就像一个嵌入Unity的PS”。
以下为杨璐演讲分享,游戏葡萄整理:
大家好!我是杨璐,《非常英雄》的制片人。很荣幸被邀请参加这次活动,也要感谢Unity China提供了这样一个平台,在这里可以和大家交流学习。回到今天的分享话题,我觉得我们的小团队是真的,但是大制作真的不配。
今天我想分享一下《非常英雄》在整个开发过程中遇到的问题,背后团队做出的选择,以及这些选择带来的影响。
《非常英雄》是一款以《非常英雄》为故事背景的2D横板动作冒险游戏。游戏方式根据剧情发展,融合了格斗、跳台、解谜等诸多元素。其中这种唯美的画风和人物动作的表现是我们做得比较好的。我们先看一个视频。
故事以大家熟悉的《西游记》为背景,这里有火焰山和白骨岭,包括一些山川河流,一些我们知道和不熟悉的大大小小的妖怪等等。场景中我们选择的画风比较好看,但是有一些西方色彩的特点,整体色调比较饱和。
根据四大师徒的特点,游戏玩法做了一些可扩展的开发。比如大师的法师属性,悟空主要扮演武功的角色。在这里,四大师徒还可以被敌人附身,完成一些相应的解谜游戏。
在故事层面,我们做的最多的就是改编。因为我们希望这个游戏看起来有趣,有家庭气息,所以我们对原版做了很多改编。
《西游记》目前已登陆主机和PC平台,发售后获得包括安妮奖最佳角色动画奖在内的多项国际奖项和提名。事实上,它主要集中在最佳艺术和动画表演领域。同时游戏也得到了很多玩家和媒体的肯定。在此衷心感谢大家的支持!谢谢大家!
接下来分享以下制作过程。今天给大家介绍一下《非常英雄》在画面表现上做了哪些努力和尝试,踩过哪些坑。
画面本身涉及的内容非常广泛,包括软硬件支持、美术设计、动画特效、界面等。前后有很多很多内容。因为时间关系,这里我想重点介绍一下这款产品相对比较优秀的产品,比如场景美术和动画设计。
我将通过四个方面来介绍整个开发过程中我们是如何一步步从最初的想法和愿景到最后实现整个游戏的。
从第一部动画设计来看,我们其实并没有做什么重大的工艺创新。基本上我们遵循的是常规流程:确定人物形态特征,素描阶段,动画设计阶段,如何融合,最后是QA调整阶段。在整个过程中,我们有一个很大的想法,就是希望在表现形式上有更丰富的表现。基本上,我们最初的设计理念是基于2D漫画的想法。
首先,我们以手绘线稿的形式为整个动画的设计定下了一个大方向,而这些工作主要都是由我们的动画导演一个人完成的。
第一步是确定角色的形态特征和在游戏中出现的需求,然后动画导演根据这些信息设计角色的初稿,开始整个动画的设计,比如它的镜头感、动作特点、性格等等。初稿的主要目的是确定角色的PD。在这个阶段,我们不指定角色会穿什么样的服装,有哪些细节,只确定比例。
第二步,角色设计师开始在这种比例状态下画出其部分服饰、五官、色彩等特征。动画师开始按照初始比例设置骨骼,比如骨骼的数量。这部分还涉及到和程序、游戏设计师的一些沟通,因为骨头的数量最终会影响到整个产品在内存、GPU分配等方面的资源。
第三步,根据游戏中人物的需求,合理的分组规划所有的动作,并融入特效和操控,达到我们想要达到的最终效果。
最后,合理安排资源。我们常说刀刃要用钢,在研制过程中也不断强调,但期间总会出现不可控的情况。所以在这里,在整个开发过程中,我们要不断提醒自己,这部分开发在整个产品的表达中起到了什么作用。所有的资源都被合理利用了吗?而不是把团队的大量工作和热情花在一个在游戏中看起来不是特别抢眼,或者玩家根本很难发现的部分。所以我觉得这一点要在整个发展过程中不断审视,要不断提醒自己,一定要把最好的性能放在最合理的资源分配的优先位置。
这里有一些手稿。我们来看看游戏在最后的实现过程中是如何一步步完成的。
首先,动画导演和角色设计师会根据剧情需要,确定角色的初稿。然后我们用一个脊椎2D骨骼动画软件来安排动作。
接下来就是把动作分组,和游戏设计师一起,按照我们既定的节奏,把这些动画体现在整个游戏中。在鳄鱼的这一部分,你可以看到地图是如何分割的。这主要是通过设计师的个人能力来进行一些动画的表现、设计和调整。
同一套骨骼可以不断变换地图,可以增加整个角色的丰富度。这里沙僧的地图并不是游戏中最后完成的地图的一套内容,也就是在中间过程中,角色设计师和动画师同步开发项目。我们在最后阶段进行整合,然后反复打磨。
这里面有一个很好的好处,就是在2D平面内改变质感很方便,包括打磨阶段,也比较随意,因为有时候不需要太多的技术支持,设计师会根据自己的感觉在范围内做一些调整。
接下来我们就来说说现场做的一些努力。
第一点是在画面表现方面要有大视野或者大方向。目前,2D表演有两个主流阵营,一个是以马里奥为代表的叠箱方式。叠箱的优势很明显。这一类有很多优秀的作品,包括大家熟悉的《非常英雄》 《马里奥》等等。它的好处是方便开发者设计游戏,因为它非常可量化。
无论是跳跃距离,移动距离,高度等。可以用每个方块来量化。对于玩家来说,他也可以更好的判断这种反馈。比如这个角色可以跳两格或者三格远,让玩家很容易确定这个地方可以跳过去,而我不能跳过去这个地方。其相对不足之处可能是画面不如曲线剪辑生动,尤其是在表现自然景物方面。
另一个阵营是以《空洞骑士》为代表的曲线编辑。这种方式展示的整个画面会比较丰富,特别适合表现自然景物,比如凹凸不平的自然地面、森林、山川等等。
优点是画面的表现力,缺点是会增加游戏设计开发的难度。因为所有地形都是曲线编辑的,所以在跳跃距离、高度等东西很多的情况下,很难得到一个特别准确具体的反馈。同时,这种问题也经常发生在玩家身上。所以在游戏开发之初,开发团队就需要在这方面做出取舍。
《雷曼》选择第二种曲线编辑方法。因为这样的对比很符合我们对这款产品的愿景,也希望画面表现力能提升到更高的层次,有更好的表现。而且根据前期整个产品的设计和故事的需要,自然风光比较多,所以第一时间基本就确定了这个方法,没有太多讨论。
接下来,我们需要做的是开发一个工具。
我们初步的想法是,这个工具像Photoshop一样简单易用,可以简化很多技巧,尽可能在后台点击需要的细节,尽量使用图层的概念,符合设计师在创作原画或创意作品的过程中的使用习惯。用的时候有一种画画的感觉。
在实际开发中,我们要明确这个要用什么材料,对这些材料进行分类,把所有可以加入制作不同组件的效果标准化。这样做的第一个好处就是好用,有比较完整的素材库,方便后期使用。其次,便于控制整个产品的质量。
接下来我们就来看看如何通过这个工作流程一点一点的实现最初的场景建立和最终画面的最终视觉表现。
第一,大家都很熟悉。我们使用团结的引擎。引擎的选择在早期阶段就决定了,没有太多的讨论。原因有二:一是我们想要达到的统一的效果完全可以达到。第二是我们团队所处的位置,包括周边人才市场对这个工具的高度熟悉,让我们更容易招到人才。
其次,这里提到了一个地形编辑器。我用了30%的屏幕面积来形容,其实是一个大概的数字。基本上地形大的时候可以占到屏幕面积的30%,所以地形编辑器对我们来说是最重要的,不仅要考虑到屏幕面积,还要考虑到表现效果。此外,还兼顾了开发效率和三个方面。因此,在整个开发过程中,编辑器是一个关键的开发工具。
再次,色彩编辑更符合设计师的使用习惯,可以尽可能简化工具和工作流程的复杂度。所以在我们整个开发过程中,基本上整个美术场景都是由一个设计师独立完成的,也就是说他前期搭建好整个场景,然后校正颜色,添加细节,最后优化,整个过程都是由一个设计师完成的。
整个开发过程我们有四个设计师,每个设计师会负责一个大场景。比如火焰山有设计师完成,白骨岭有设计师独立完成。最终完成后,我们会有一个整体的计划。而且有时候设计师会和对方换一些工作场景,看看对方在哪些方面做得更好,他有哪些更多的新想法可以补充。这样每个设计师既保持了独立性,又保持了一种可以互相学习的氛围。从整体结构来看,还是挺不错的。
接下来我给大家简单介绍一下整个开发工作流程。
首先,这是最小的地形单元,一个很小的模块,这是我们之前提到的用来规范工作的素材库。当它确定后,我们开始编辑地形。
这里有两个大的概念。第一个是我们先确定这个场景是什么样的主题,比如森林,洞穴内部,火焰山,水下等等。确认之后,第二件事就是确认它的光源效果,也就是我们所说的大环境。
在这种场景下,我们通常会想光源是来自上方还是来自远处。前景应该比前景光明,还是前景应该比前景光明?在整个设定过程中,首先需要确定这两点。
整个地形的编辑是通过节点来完成的。下面简单介绍一下我们控制了哪些节点。
首先是曲线节点,每个节点都可以控制其平滑度。第二是可以规模化。第三是你可以控制节点周围的顶点颜色。通过这三个方面的调整,可以带来相对丰富的地形。比如这个地形会有一些起伏,一些光影的变化,一些色相的变化。比如在某些环境的影响下,这个区域有一点蓝光,但是其他地方还是暖暖的。
当我们编辑完第一个地形后,我们可以添加一些小细节。同时,我们可以复制前景地形。在前景中,我们可以先改变纹理,换成另一种材质,与中间场景不同。
你可以看到这部分种植了植被。首先,我们应该建立一个植物素材库。我们把植物的所有属性放在素材库里。比如什么样的植被,颜色,以及它随风摆动的频率和节奏。然后通过地形编辑器添加到整个地形中。
这部分是自动完成的。我们根据它的密度、大小和频率自动地把它种在这个地形编辑器上。同样的系统,不仅是植被,火焰山(我们基本看不到植被,但是会有很多可以破坏的岩石效果)也是用同样的工具完成的。首先我们做很多可以破坏的石柱,然后按照相应的比例和密度种在地上。
虽然这里的画面比较简单,但是这个场景只有一个背景,地形已经基本填满了整个画布。
接下来的工作就是在这些画布上添加更多的细节,比如远景,中景,近景,增加整个画面的感染力。移动的光影是通过一个纹理球实现的。其实是通过三张叠加的地图不断滚动来实现的。这部分后面会给你一些具体的解释。
在填充了整个画布后,我们快速调整了场景的颜色。这不一定代表最终的效果,但首先会有点像绘画,先给画面一个大色调。然后我们开始在屏幕上添加一些细节。
我们用一种简单的方式加入雾的效果,来区分长程和中程的过渡。我们制作了三个系统来实现雾的效果。第一个系统是视觉。在整体视觉中,我们根据距离划分设置了整个雾效过渡的彩条,用于调整不同距离处雾的浓度、密度和颜色,这是对整个场景环境的调整。
第二个是通过整体色彩,背景要亮还是前景要亮。明暗程度也是通过相机的远近来调节的。除了这两大环境调整,一是控制雾的颜色和密度,二是控制整个场景的灯光强度,三是用相对简单的方式在场景中增加一些过渡,比如面或者点。
这部分主要是为场景添加一些相应的素材。植物在中景是明亮的,当我们移动到近景时自然变暗。这部分就是前面说的灯光设置。
因为在我们之前做过的一些项目中,这部分是需要设计师一个一个调整的。如果内容比例比较小,我们可以调整一个贴图,两个贴图,或者调整对象的颜色。但是如果要不断叠加层数和场景的丰富程度,这个工作量还是相当惊人的。虽然鼠标的每一次点击都很简单,但是有可能我们要一遍又一遍的重复同样的工作上万次,所以在这一点上设置一个大场景环境的工具是非常非常重要的。因为在这种情况下,设计者只需要调整各层的距离。
《非常英雄》这个项目从2015年开始,前期的开发和准备,包括这些工具,从2016年和2017年开始。有些内容其实在Unity后续版本中有很多类似这样的工具。
这里你可以看看左边的小景。一是前景黑暗,二是会自动模糊。这部分其实是和灯光系统结合在一起的。我们在前景和远景中设置这种虚化效果,也是由设计师来决定,比如我需要虚化哪个景深到什么程度,他会做出相应的调整。基本上这种方式有助于平衡特别丰富的画面,因为有时候内容太多,我们很难看到一些人物的打斗或者一些和游戏玩法有关的内容。通过这种虚拟的效果,可以更好的突出主题。
这部分参数的设计类似于灯光,基本都是在场景中设置的。
添加完细节之后,接下来就是对场景的效果进行整体调整。在这方面,我们主要开发了一套完整的色彩调整工具。然而,这是我们在2016年开发的一整套工具。比如在Unity的新版本中,Unity 2019已经有了后期处理的功能,所以和我们当时开发的美工设定(Unity中的一个C#脚本)这部分内容非常接近。如果你用的是Unity的新版本,可以很容易的调整。
通过滤镜的方式,首先你可以调整整个画面色调关系的变化。因为整个地形就是一个地形编辑器,我们可以在开发的同时,对地表、高程、屋顶逐一进行调整,无论是颜色、明暗变化,还是色调变化。更小的细节可以通过节点来控制。同时,我们也可以控制雾的效果。
以上是整个场景的开发过程。
除了整个工作流程,后期的QA方面也很重要。当时在开发工具的时候,我们更关心的是如何简化工作流程,如何简化这些不必要的环节,简化工具。但是因为我们并没有真正进入到项目的后期开发阶段,包括调试阶段,所以整个工具一开始就没有把这部分考虑进去。
好在在之前的工作流管理中,我们强调一切都要优化,组件化,每一层都要划分清楚。虽然我们没有强调最后的QA和优化,包括后期的手机版本迁移,一开始也没有考虑到,但好在前期做了这项工作,现在看来非常有必要。
因为整个场景分为六层,其中四层是必要层:远景,远景到游玩层的过渡层,游玩层,近景。另外还有两层属于装饰层,第一层是特效。这种特效有时候分布在这四层当中,有时候又是单独的,有些部分是消耗资源的特效。另一层是会出现在某些流程动画和一些特殊场景过渡中的层。之所以这么做,是因为这对后期整个产品的移植和优化至关重要。
接下来说一下开发工具所消耗的资源平衡,以及如何找到一个合适的点。什么样的工具合适?能停到什么程度暂时停一下,再考虑这个工具够不够用。
大家一定知道,没有完美的工具,也没有万能的工具,只有合适的工具。所以在这一点上,不管是所有的开发组,大团队还是小团队,尤其是小团队,都要尽量做到适可而止。我们觉得差不多。我们能达到这样的效果,就应该把更多的精力放在游戏的设计和情感体验上,而不是过分强调这个工具应该有多完美,应该有多包罗万象,因为这个工具实际上是根据需要进行调整的。
接下来我们来说说刚才提到的分层优化。
首先,优化分为我刚才介绍的四个必要层和两个调整层。其次,就是我们后期QA调整是怎么完成的。
你可以看到下面的对比图,这里有更多的灯光效果,后期渲染效果,灯光变化。我简单介绍一下这个效果的实现和最初的选择。
事实上,灯光对整个画面的表现至关重要。但是,通过之前一些项目的积累,我们发现了两个问题。
第一个是很难通过2D表现出特别丰富的灯光效果,因为这是一个平面,所以我们希望一些特定的效果是可控的,整个阴影需要更柔和,有时候色彩太浓,所以现实中的物理灯光有时候很难达到这种效果。
我们通常通过几张地图来完成。感兴趣的朋友也可以看看《非常英雄》的分享视频。他们对灯光系统的开发和选择基本上都是非常非常前沿的,做得非常非常好。但是它们的实现过程是通过不同的贴图层来实现的,也就是说要指定光线的范围和颜色,这样美工的工作量会呈几何级增加。
早些年我们做《奥日》项目的时候,大部分是两张图做的,一张是原图,一张是光效图,实际上加了一个蒙版。
我们这次做《雷曼》的时候,是想减轻美工的工作量,让画面看起来动感丰富。而且这个光源是可变可控的,所以我们在这两点之间反复挣扎寻找这个解。
最后的解决方案,正如你在前面的图片中看到的,整体上看起来不错。基本上,我们的预期目标已经达到。它是通过一个贴图,控制顶点颜色,动态改变顶点颜色来实现的。好处是表现力还可以,然后大大节省了内存显卡的份额,也节省了开发时间和预算。最重要的是,我们的设计师很高兴,因为他们非常非常头疼重复绘制纹理并使其正确。
最后主要说优化部分。
这部分QA对于小团队来说,确实是一个很大的挑战。一开始我们并没有意识到这么难,因为以前大家在大公司工作的时候,有一个专门的团队,很多人都在测试这个产品。但是工作室小的时候,测试是一件很头疼的事情。
从始至终,我们只有4个测试人员。一开始他们说没什么好测的。这将需要6或7个小时运行游戏后,后期阶段。他说测试只会每天运行一次。所以他们后期会熬夜,有时候一个人同时测试两张图是极其辛苦的。
在这种背景下,我们将开发一些能够自动运行图表的工具,比如自动运行图表。晚上下班后,我们可以在这里设置这个游戏,让这个角色在里面自动运行,然后测试什么问题。
比如自动UI不断切割各种UI。第二天,我们收集了各种测试报告,分发出去,看看如何调试。我觉得这部分对于小团队还是有必要的。就算我们在开发的前期和中期花一点时间准备这个东西,我觉得也会大大减少游戏调试的痛苦。
非常感谢您的观看。已经开发了《非常英雄》的移动版,其中我们做了很多优化和改进,效果基本可以和主机平台保持一致。希望近期能等来久违的版本号,把这款产品带给大家。
再次感谢大家的支持!感谢Unity China举办此次活动。在此谢谢大家!谢谢!
上帝改变了什么|王者荣耀IP |动物党访谈
英雄联盟手游|我们杀了公司|台湾的科技
Q4产品储备|二级游戏的困境|分销的困境
最新的游戏专业书籍上架了!点击下面的小程序获取。

其他教程

因为爱所以好好说话(听她说,爱情)

2022-8-31 18:06:22

其他教程

独立游戏 神作(独立游戏十大神作)

2022-8-31 18:08:31

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索