type
status
date
category
summary
language
面向群体
游戏品类
资料类型
平台
tags
password
Sub-项目
作者
文章链接
来源
标签
Parent 项目
发布时间
slug
icon
在CEDEC2017上备受瞩目的是任天堂的“塞尔达传说:荒野之息”相关会议。除了创作者外,还有一些关于完成该作品的工程师的支持的会议。
从这些会议中,我们将解释三个主题:“《塞尔达传说:荒野之息》项目运营 - 从试作到产品的无缝连接!”,“为了实现游戏体验和物量相结合的制作流程管道·TA案例”,以及“在《塞尔达传说:荒野之息》中实现QA - 介绍最大化游戏乐趣的工具和调试”。
支持整个游戏进展的“塞尔达编辑器”
首先要提到的特点是,在制作本作时引入了名为“塞尔达编辑器”的新工具。它不仅管理游戏使用的所有数据,还具有编辑功能、工具启动器功能和转换功能。这是一个支持项目运作的核心工具。在制作过程中,首先制定了指导方针,并采取“骨架方式”,即创建骨架后,进行细节的添加,以及类比陆地跑道,第一圈在试作期间创建骨架来确认游戏的乐趣,第二圈是进入量产期准备好所有正式数据,第三圈是磨练直到最终产品的完美阶段,并制定里程碑。
塞尔达编辑器
可处理的功能
在每个循环中都设有禁止事项。例如,在第一圈中,除游戏本质实现之外的所有内容都被禁止,在第二圈中,专注于收集素材,并禁止磨练等。在最后的阶段,将进行磨练。因此,在试作期间,过去作品的村庄模型和NPC模型被使用来推进制作。同样的方法也适用于敌人和最终boss。换句话说,通过充分利用过去作品的资产,在游戏体验中制作了确切的乐趣,这就是第一圈的结果。此时,艺术家们正在考虑画面制作,并进行了技术验证,以将其落实到游戏中。在向量产方面,他们整理了工作流程,并在游戏主体之外开发了运动等。
第一轮几乎全部由过去作品的数据组成
例如,像这样。右侧是产品版的角色
在第二圈中,专注于收集正式数据。在这种情况下,由于需要处理大量的工作,因此传统的任务工具无法很好地管理。因此,在塞尔达编辑器中添加了将任务附加到数据的功能,以通过将任务附加到游戏数据中消除“迷路任务”的努力。因此,可以很好地管理每个临时数据的进度。
此外,与过去手工进行的进度管理不同,通过将任务汇总并自动更新,可以获得准确的信息,并且也可以进行可靠的管理。可以通过图表预测项目的结束时间。
第二圈专注于创建正式数据
在游戏中公布任务
自动管理任务
因此,预测也更加准确
第三轮的目标是将所有数据提升到产品质量。在这一阶段,虽然需要调试,但该项目将错误视为任务进行计算。此外,使用塞尔达编辑器进行报告,使其易于报告并在标有标签的位置报告任何错误。检查模型大小和纹理大小是否合适是自动检查的。例如,物品的燃烧方式和武器是否浮在水上是目视检查的。
将所有数据提升到产品质量
将错误作为任务处理
尽管采用了此类引擎集成任务,但其好处是可以轻松访问数据。无需从任务中查找数据,即可减少调整和确认的成本。此外,信息收集变得更加容易,可以收集准确的信息,对于列表的创建和数据管理也有很大的好处。最重要的是,任务管理变得更加容易。所有任务和错误任务都集中在塞尔达编辑器中,从而实现了集中管理。结果,可以专注于创意工作。通过创造新的开发流程,可以看出新的作品是如何诞生的。
制作流程管道和技术艺术家是如何参与的
接下来是制作流程管道和技术艺术家(TA)的讨论。该公司的游戏开发最关注游戏的乐趣。因此,无论职业如何,都要意识到设计的物品是否正确地设计为游戏,并在最后一刻进行调整。他说:“我相信这种粘性会导致产品质量。”
虽然这样的坚持导致了游戏的诞生,但在本作中,有大量的物品量,需要共享整体视图,同时提高生产力,需要与员工进行充分沟通,即使在反复的重新拍摄中,也需要提高质量。因此,管道工程师和TA在保持制作样式的同时,挑战制作广阔的世界。
相反的问题存在
挑战新事物
作为资产制作方面的问题,预计需要大量的资产制作成本,例如保持物量,提高质量,通过重新拍摄进行升级等。但是,人员和时间无法无限制地增加。因此,为了顺畅地运行艺术家的资产生产周期,并发挥个人的最大能力,需要的是稳定的DCC(数字内容创建)工具环境。
为此,需要的是稳定的DCC工具环境。本作是使用Maya和Photoshop CC制作的,但是引入了许多插件,并且使用的艺术家数量也很多。在这种情况下,由于存在环境不一致性而容易发生故障,并且一旦发生故障,就会停止大量的工作,因此损失也很大。因此,首要任务是稳定DCC工具。
因此,为了统一DCC工具执行环境,使其通过专用启动器启动,统一了Maya首选项,并进行了工具的自动测试。此外,使用了能够检测到艺术家遇到的错误并自动报告的功能,以便快速解决在工具发布后发现的错误。
统一DCC执行环境
自动创建错误报告
此外,本作进行了将物理引入游戏的尝试。使用的物理引擎是Havok,但是预计物理数据的质量直接关系到游戏的乐趣。此外,大量的物理数据是必要的,以填充新的世界,但是不打算设立物理专业艺术家。因此,需要一种环境,让大量的艺术家稳定地量产物理数据。
为此,采用了将物理数据制作流程简化的方法,即将工作集中在DCC工具用的插件中,而不表现出Havok的环境。此外,使用了自动化测试,以确保物理数据的稳定性。
将作业集中在DCC工具插件上
执行危险物理数据的检查
而对于可能会发生的重拍摄问题,通过自动化LOD模型制作,减轻了艺术家的负担。LOD模型仅通过生成参数进行控制,并由程序员和TA进行管理。这样,艺术家就可以专注于基础模型。这样做可以提高整个模型的质量。
此外,以“试炼神殿”为例,解释了自动化的过程。在这里,需要将艺术家、策划师和程序员的工作流程合并,实现了自动化的零件模型制作和零件布局。通过优化,可以始终追求试炼神殿中的游戏体验。
对于动画数据,还自动化了在模型制作、骨骼制作和动画制作等各个阶段进行版本更新时的更新数据制作。通过自动化接地数据的设置,可以多次进行资产调整周期而不必担心后续工作。
通过重点自动化非创意性作业,可以专注于创意性制作,为提高资产整体质量提供支持。TA的工作是将艺术家的力量与游戏联系起来。
自动化LOD模型制作
追求最后的游戏体验
自动化更新动画数据
自动化接地数据设置
接下来是关于开发用ROM的制作。基本上,将艺术家制作的DCC中间文件转换为源文件,程序员根据源代码构建可执行文件,将二者合并即可制作ROM。每次数据更新时都会制作ROM,并将其转交给其他工作人员。也就是说,为了进行正常的开发,需要一个稳定且高速运行的ROM管道。
此时重要的是版本控制。如果构建时间太长,更新的数据将与之不兼容,导致运行时错误。此外,不仅是公司本身,还有协作公司也在参与制作,因此需要支持多个站点。因此,这次设置了在下载时可以同步执行文件和资源的版本。对于正在进行的数据,可以选择是恢复还是不变。此外,还可以选择多个ROM,以便在出现问题时选择其他ROM进行恢复。
使所有座位都以相同方式运作
选择多个ROM
然后是资源管道。这里需要保证不进行不必要的工作,可以立即交给下一个人,并且正确状态一直被维护。因此,在加载复合资源的补丁时,如果有临时开发资源,则使用它,开发资源在Jenkins进行转换时自动清除。对于包装资源,进行版本控制,但与个别资源有偏差。因此,设置了差分表,并将有差异的内容设置为使用个别资源。这样,艺术家只需上传个别资源即可。
为了同时实现快速交付和稳定性,引入了自动化。除了在Jenkins中进行转换外,还设置了必须从任何资源中进行全转换。如果发生临时错误,只需在最后收敛。
为了立即传递而进行的工程1
为了立即传递而进行的工程2
构建管道需要的是能够快速、高频和稳定地制作ROM。为了快速制作,资源直接从PC复制,仅将可执行文件设置为保存版本号即可。
为了实现高频率,将主要使用的ROM每5分钟制作一次。此外,根据平台和构建目标,更改了构建频率。特别是像“带有调试功能的版本”这样的开发中最常用的版本,将高频率制作。
为了确保稳定性,设置了通知构建错误并指定个人解决问题,而不是将其分配给某个人。此外,为了保证ROM的稳定性,进行了简单的烟雾测试。如果失败,将删除ROM并通过聊天指定名称来请求修复。
构建管道的流程
实现高频率制作和烟雾测试
此外,在与任务相关的ROM管道中,要求能够确定进行了作业的ROM,并确保ROM制作通知被正确传达。为了确定ROM,设置了按顺序分配版本号。通过数字的大小可以明确地知道是否已经反映了。然后,设置了Jenkins自动更新任务状态并设置了任务通知ROM制作。
通过这些工作,ROM变得再平常不过,运行也再平常不过。所有人都可以共享游戏的整体图像进行开发。由于可以多次进行制作周期,因此也有助于提高游戏体验。创意性是人类的领域,而自动化则是定型、稳定和可靠的领域,最终提交数统计结果为,员工占52%,Jenkins占48%。
ROM管道和任务的关系
通过任务进行制作通知
认为趣味也包含在品质中,因此进行QA
最后,介绍一下QA部分。在进行本作的QA时,不仅要确保没有错误,还要认为趣味也包含在品质中。为了加深趣味,将QA的角色定义为提供和维护制作周期的环境。
此外,本作是在广阔的领域中展开的游戏,预计将成为大规模项目,并且需要处理多样化和庞大的数据。因此,面临着将各种工具的功能特化为游戏的问题,以及仅提高效率不足以解决的问题。因此,将人、数据和工具连接起来,以便于使用的状态是目标,将编辑数据、工具、任务和操作者的数据进行数据库化。
当想要执行某些作业时,如果数据、人和工具没有连接,则在查找作业对象的过程中会遇到困难,从而抢夺创意性时间。因此,出现了“塞尔达编辑器”,正如前面所述。这样,可以节省查找作业对象的时间,改善制作周期的效率。
为了全面了解游戏并提高其品质,设计了能够让任何人处理数据库查询的查询,以从数据库中提取数据。创建了可以在地图上可视化与领域相关的信息的世界地图绘图,并提供了领域任务视图,以便了解整体工作的进展情况。在游戏概览中记录了常常发生游戏失败的位置,可以采取相应的措施,例如在这些位置进行自动保存。
此外,还设置了数据共享。通过数据库查看器可以共享和重用查询。这里不仅可以共享他人创建的查询,还可以让非程序员也能够在制作中使用,设计了可以自动处理有问题的数据的任务。通过这些工具的协作,游戏开发周期中产生了许多有趣的内容。
数据库化
使用绘图和列表进行制作
关于调试,过去认为调试通常在开发的最后阶段引入。但是在第一个里程碑的演示中,出现了许多错误,据说在两天内冻结了617次。如果继续这样下去,即使在最后阶段努力去除错误也有可能无法完成。因此,从游戏初期就开始调试。然而,作为开发人员,理所当然地希望在有时间调试时更进一步地进行实现。
对于自己遇到的错误和其他人要求修复的错误,应该有意识地加以修复。然而,还存在许多未修复的错误。有时时间不足,有时不知道原因,有时根本没有意识到错误的存在。另外,也有判断没有人遇到问题,将其推迟处理的情况。
因此,旨在提高制作周期效率的早期调试设定了两个角色:旨在消除最终产品中的错误和漏洞。因此,在过去,错误管理系统和任务管理系统是分开的,但现在在“ZELDA EDITOR”中设置了将错误和任务作为同一管理的设定。据说还进行了说明会来管理和运营这些事项。
此外,通过“ZELDA_ERROR”使错误更易于察觉。为了避免冻结,程序员开发了这个机制,但在最终产品中,已经有了6000多个ZELDA_ERROR。此外,还引入了"Hot Reload",可以即时修正错误的数据。同样,使用"Hot Reload"也可以测试构建的新程序。
ZELDA_ERROR的展示
了易于识别错误的描述
使用游戏画面即可立即提交错误报告,这有助于减少错误。在提交错误报告时,自动插入了玩家的坐标、场景切换、事件、地下城等信息。因此,即使不知道负责人是谁,也可以根据数据信息向负责人发送联系,简化了调试过程。此外,还采用了通过自动测试发现错误的方法,以应对无法被人发现的情况。
通过这些活动,确保了错误报告的准确性,并促进了调试。开发人员自己也积极报告错误,并通过新的尝试改变了团队。调试是制作的一部分,并与实现并行进行,从而使其能够进行最终的完善。通过这些策略,新的"Zelda"游戏诞生了。
仅需按下"投稿"按钮即可提交报告
只需点击即可提交报告
过去作品与本作的错误报告量的差异
使用绘图和列表进行制