简化并削减需求:Doom的创建者John Romero访谈

在上一届Tech Train IT节上,我们遇到了传奇人物John Romero,他参与了标志性的Wolfenstein 3D,Doom和Quake的设计和开发。 我们讨论了游戏开发人员是否需要软技能,哪些工作工具值得关注,以及Id Software的联合创始人最喜欢的玩具。 RUVDS的创始人Nikita Tsaplin提出了问题。


此处文本和视频的英文版

Nikita Tsaplin-RUVDS的创始人

在一次采访中,您说2001年我正在查看1991年编写的旧代码,但没有发现任何实际用途。 但是过了一段时间,回到第二千分之一的代码,您就称它“不错”。 您如何跟踪代码质量?




John Romero-ID Software的程序员,设计师和共同创始人

1991年,至少有一半的代码是用Assembler编写的,而我才刚刚开始用C编程,并且只是一个初学者。 因此,在进行了十年的活跃C编程之后,回到它真是太糟糕了。

告诉我,选择标准如何随时间变化? 哪个保持不变?


执行代码的环境已完全更改。 写于1991年的是在DOS中启动的,而2001年的代码则可在Windows上使用。

那是因为平台升级了吗?


全新的环境。 是的

您能否谈谈评估代码的主要标准?


关键标准-容易阅读代码吗? 这很重要。

是否有任何评论? 过度这样做不值得-很快变得无聊。 但是重要的是,对代码的复杂部分和部分进行注释,并且其结构作为一个整体可以理解并且易于补充。

开发人员必须具备哪些技能才能加入游戏行业?


您必须强烈渴望创建游戏。 因为很难完成游戏-这是艰苦的工作。 无论您从事什么工作,都将比您想象的要花费更多的时间。 您需要为长期专注于特定任务的准备。

我听说开发人员现在比以往更需要掌握“软技能”? 是真的吗


是的 因为现在每个人都在组队,所以当您一起工作时,您需要彼此同情。

互动吗?


是的

您对此有很多经验吗?


您必须习惯它,程序员不喜欢说话。 他们只想编码。 重要的是要了解如何限制与他人进行编程所花费的时间,只是为了简短的交谈。 但是如今,为什么不仅仅使用Slack并通过它进行通信。 这比取下耳机,起床并与办公室另一端的人交谈要方便和快捷。 因此,我们更喜欢Slack。

是的,人们需要空间并通过通讯程序进行通信。


尤其是如果您戴着耳机,是的。

您认为哪些软技能最重要?


我相信互动比其他技能重要得多。 一直都是这样。 如果您周围的人不知道自己在做什么,或者您不知道正在发生什么,则可能会浪费大量时间和金钱,因为您正忙于处理错误的事情。

因此,沟通是您可以做的最重要的事情之一。 每个人都应该知道他应该怎么做以及应该做什么。 即使您对特定片段进行了工作,最重要的部分还是如何呈现它。 不只是,“好吧,我会做的……” 这样说会更正确:“我将以这种方式做到这一点。 你同意吗?”

那么-在每个开发阶段最重要的部分就是沟通?


是的


几个月前, 我们在莫斯科与Richard Gray进行了交谈 他建议开发人员在游戏行业中立足的最佳方法是自己动手做一些事情。 但是,另一方面,您说在Sigil中创建像Doom这样的游戏关卡是一项极其困难的任务。 现代工具过于复杂和分层,无法为投资组合创建草图。 如何找到中间立场?


没错 现代引擎将需要大量时间来创建一个关卡。

一切远没有以前那么简单。 现在需要很长时间。 今天,有很多人参与开发。 各个人员负责照明。 游戏设计师设置极限,艺术家使用概念艺术。 他们正在努力营造视觉风格。 仍然需要检查着色器的工作。

在我看来,如果有必要,现在几乎不可能仅为投资组合建立一个级别。


通常,这是可能的,但是需要很长时间。 YouTube上有一个很好的例子。 如果您使用Anrial,并且想了解到底什么是单独创建关卡的顺序,则对此有说明。 一个人录制了一个30分钟的视频,其中展示了10个小时创建走廊的过程。 它仅持续30分钟,但播放速度很高,足以看到在走廊上工作的所有步骤。 十点钟! 今天的游戏非常耗时。

您认为开发人员应遵循什么策略来开始职业?


最好的选择是在家中学习尽可能多的材料。 您知道,您可以上学并从中学习,这将以文凭和其他方式带来它的优势。 但是,您可以在家中学到更多东西。 这样工作会更快,您将确切地了解自己想要什么。

有人说,使用现成框架的程序员不知道它如何在内部工作。 这有什么区别吗? 了解所使用的框架如何工作?


是的,太好了。 这是有帮助的。 假设一个初级程序员使用框架。 经验丰富的程序员知道他们如何工作。 这意味着,如果有必要,他们可以构建它,因为他们从头到尾都知道工作的细节,对吗? 这非常有用,因为在不了解内部结构的情况下,框架使用效率非常低,从而导致严重的性能损失。

灵活性问题。 毕竟,如果您知道如何的话,您可以组合框架。


当然,需要将所有内容组合在一起才能使其正常工作,但这并不意味着优化将达到最佳状态。 这不保证软件知识。 特别是在数据库方面。 您可以写下信息或代码本身来操作数据库,这将非常有效。 而且会感觉到一切都井井有条,因为这组命令是正确的,但是如果您不知道InnoDB在其工作中如何使用它们以及它们如何解释它们,那就别管它了。 您将需要聘请顾问来纠正工作。

另一个有趣的话题是敏捷。 在书籍和文章中,游戏开发人员充满了浪漫和不可预测性。 在这种情况下,敏捷将派上用场。 敏捷也许还有其他方法?


只有敏捷,而不是强硬和不可侵犯的形式。 我们在某些需要移交材料的时段内使用“标记”。 这是一个很大而舒适的时间。 大约是敏捷预期的三倍。 大约六个星期,而不是两个星期。 这是一个非常方便和舒适的间隙,可以解决许多问题。 还有看板式的借贷……也许因为并非所有任务都需要在六周内完成,所以某些任务仍在工作中,无法在截止日期之前完成。 结果,我们检查工作的结果,并且不将未完成的过程推迟到下一个“标记”。

在这里,我们谈论的更多的是正确地汇编需要完成的机会和任务的清单,而不是盲目遵循截止日期的原则。 如果您执行任务(如果不是,那么很好),该问题将推迟到下一个“标记”。

随后,该策略变成了重新评估优先级的练习。 如果某件事情需要花费很多时间,请采取其他措施。 简化并删去解决任务所必需的。 或者,如果经过了很多时间,您只需切换即可。

总而言之-您是否需要了解流程如何工作并结合不同的方法?


是的

您是否可以比较现在(例如90或千分之二)在游戏工作室中的开发流程的组织方式?


它更多地取决于团队中的人数。 我的意思是,这始终取决于员工人数。 即使到现在,如果您只有四个人组成的团队,您的开发风格也会与1990年代时的风格相同,并且构成相同。 因为团队很小,所以人们知道他们在团队中的角色并彼此密切沟通。 因为,很可能他们在同一房间工作。

我的公司RUVDS中也有一个小型团队,我们不需要经常的正式沟通。


没错 这不是必需的。 1990年代也是如此。 简而言之,您编写的所有内容都会因平台的开发以及通信和开发方法的变化而保持不变。 随着80年代设计语言的发展,您正在开发的设计也有所不同。 您设计的内容不同,但是开发产品的方式相同。

随着时间的推移,有没有事情变得更容易或更难开发? 又为什么呢?


有许多有用的工具可以简化游戏的创建。 编写好的设计变得越来越困难。 很难为游戏提出一个好主意。 您可能拥有游戏中最好的程序员,他们会编写令人作呕的游戏,没有人会玩。 程序员的技能不会对此产生影响。

那么游戏设计是第一位的吗?


这是最重要的。 如果您有一支精通游戏编程的优秀游戏设计师,那么您冒着开启游戏新流派的风险。 您将拥有出色的游戏。 因此,游戏设计比其他任何事情都更为重要。

返回TechTrain。 这列火车将博彩业带往何处?


我想说增强现实(AR)游戏是一个非常鼓舞人心的领域。 这是一个新的思考空间,有很多钱。 不像每个人投资时的VR那样多,但是...

但是虚拟现实并没有持续很长时间。


是的,没有坚持。 在非游戏应用中,VR更好。 她有很好的想法,但VR成功的主要障碍是疲劳。 人们在玩游戏时会太累。 您知道,人们不再跳上他们的Wee护垫。 他们只是累了。 而且他们不想再这样做了。 而且VR很难使用。

您是否有增强现实或VR开发经验?


我没有做过与AR相关的任何事情,但是我真的很喜欢它的功能。 如果您仔细观察Lego游戏或Minecraft-Earth,那么AR具有巨大的潜力,每个人都将开始尝试它,并喜欢它的客户。 Pokemon Go已向所有人证明,AR潜力巨大。 它不能替代控制台,智能手机,而是一种新的领域和技术。

似乎每个人都知道这项技术是多么新,但是他们不太了解如何使用它。


并非如此,已经为她创建了一个API。 苹果已经开发了一个AR工具包,这很好。 他们没有自觉地为VR制作类似的软件包。 他们为AR开发了它,因为他们知道它会起作用。 将AR与Swift 5搭配使用可以做很多很棒的事情。

您如何看待手机游戏?


好吧,Sigil在智能手机上发布了。


在我看来,我们在大量设备上启动了Sigil。 疯狂的数量。 您知道,在Instagram和Twitter上,有太多运行Sigil的设备。 人们继续上传屏幕截图。

但是...他们自己完成了构建吗? Sigil是为智能手机生产的?


好吧...它是在Android平台上发布的。 您可以下载Doom支持的mod。 Sigil也可以在Xbox上播放。 您可以使用Automechs-这是具有开放源代码并支持修改的Doom,然后可以在Xbox上安装Sigil并从容播放。

对啊 您是否曾经考虑过在《毁灭战士》的世界中发布《 Royal-Royale》游戏? 像Fortnite一样?


我认为这很有趣。 我不会的 但是,如果有人这样做真的很有趣。 大逃杀只是一个框架,具有基于任何游戏的自己的一组规则。 例如,相同的Fortnite。 她不是大逃杀游戏。 但是当她看到PUBG时就合而为一,并抓住了自己的作品。



可以与任何宇宙一起使用。 但是专门为此模式设计的视频游戏反而效果更好。 仍然有许多类似的游戏正在尝试游戏机制。 例如,当您玩游戏并做所有事情时,例如挖掘资源...挖洞和圆圈变窄,明白吗?

是的


当您挖掘时,人们会朝您开枪! 而且您需要挖矿来收集物品!

是的 比较好! 您认为将来会淘汰哪些游戏类型?


目前都没有。 我的意思是,剩下的唯一类型是文字任务,但仍然有冒险游戏。 例如,普通的任务发展成神秘的冒险游戏,与此同时,大量的休闲游戏。 无论在哪里销售游戏,尤其是在手机上,您都可以注意到各种各样的游戏类型。 那些相信任务或其他任何事情会永远消失的人们,可以追溯到90年代或2000年代-他们只需要去“磁盘架”上观看所有冒险游戏。 这样的游戏可以很好地卖给年龄较大的女性,她们喜欢它们。 现在18岁至25岁(即35岁)的游戏市场是无限的。 他无处不在。

但是,现在很可能策略远没有像以前那样流行。 在我看来,某些类型仍然会消失。


哦,他们绝对不会丢失。 现在,他们发布了许多策略。 我的意思是,我们开发策略是因为它们很有趣。 例如,像Paradox Interactive这样的公司,在粉丝中拥有自己的利基,其中包括特别是铁杆玩家,他们热爱自己的游戏制作方式。 为了填补游戏的复杂性。 他们一定会生存。 人们喜欢玩刚发行的帝国时代最终版。 这是一场990的游戏...第八? 好像吗? 是的 这是一种策略。

我最喜欢的策略之一。 是的


是的 他们不会去任何地方。 从某种意义上说,RTSki。 同一个文明。 所有这些游戏都在不断发展之中。

创造成功游戏的秘诀是什么? 使用最新技术重要吗?


好吧,那有帮助。 先进的技术会有所帮助。 但是真正好的游戏设计是人们玩游戏的原因。 他们没有播放引擎。 您是否想玩游戏,因为它是虚幻引擎上制作的? 不,几乎没有。 您玩游戏的原因是游戏的设计和想法,外观以及它可以告诉您的功能。 这些都是设计的各个方面。

您最喜欢的游戏开发工具或解决方案是什么? 此刻,以及您的整个职业生涯?


对于工作流程和整体生产力-松弛度很棒。 对于票务系统,我们使用Assembla,但是Jira也很出色。 由于速度快,我们使用Perforce来控制许可证。 这些是我们工作室中每个人都使用的主要程序。 对于创意部门,它是Maya的Photoshop,如果您知道SyncScetch,它是另一个很棒的工具... Shotgun非常适合工作流程。 从开发人员的角度来看,我们在Mac和PC上都使用Unity和VSCode进行编辑。 总体而言,仅此而已。

对于设计和计算表,我们经常使用Google Tables。 一些工具从网络上的Google表格中读取信息,然后返回游戏。

在大多数情况下,这是Google的软件。 我们将演示文稿用于设计文档,而将Google表格用于大多数信息。 对于游戏...例如,在战利品发布系统中,但这没关系。

我想每个人都想知道……约翰·罗梅罗本人会推荐什么样的比赛?


杀手2。


杀手 对不对


杀手2。

我最喜欢的游戏之一!


太棒了

当您谈到想要挑战游戏的铁杆玩家时,我想到了杀手!


是的

由于他有自己的疯子利基,所以...


是的 这些挑战。

...在困难的水平上敲出最高分。


工艺和疯狂的挑战。

我崇拜他们。


太好了

是的是的 我遍历了所有部分。


上课!

是的,我经历了过去的所有部分,但他们在2016年重新发布了游戏并创造了绝对……只是世界上最好的设计。

是的


我期待发布Ghost Recon:Breakpoint。 强烈地。 是的...我等不及了。 太棒了。 我爱幽灵行动。 我喜欢原始游戏,而不是GRAW的粉丝,但我知道……我设法扮演了一个新角色,现在我迫不及待想要发布游戏。

您知道,出色的游戏现已问世,但其中有些游戏需要很长时间才能深入研究。


是的

您太累了,无法理解。


是的,我想玩...

所有这些机制...


是的是的 就像“我需要再次记住一切吗?” 但是……同一魔兽世界也一样。 有很多设备,很多任务,个人动机游戏,例如,您到底想在游戏中做什么,以及如果发生什么事情,则游戏需要高度专注。 而且,如果您不需要这种参与-您可以玩其他不需要关注的游戏。 独立游戏非常适合此类场合,因为它们现在需要几个小时才能完成。 例如,Firewatch和其他情感项目。

是的,是的...


您知道,这些游戏有点让人分心。 还有...

杀手也可以归因于他们。


哦,是的! 杀手对...

尤其是如果您熟悉该系列并对自己说:“我只想尝试这个挑战。” 是不是

是的...


您不必完成整个任务。

您通常会在几个小时内习惯。 因此,您的头号人物是杀手,幽灵行动和……也许是第三名?


独立游戏。 有很多。

现在,我们转向一群专业的开发人员作为听众。


好啊

请看看相机,并告诉我们是什么启发了您。


噢,上帝...什么启发了我?..吃豆子是我开始开发视频游戏的原因。 我提醒您,它的设计于1980年发布,与当时的其他游戏截然不同。

1980年是“杀死外星人”,黑白相间,声音差。



随着Pacman的发布,一切都发生了变化。 那是一个无害的助行器,绝对完整和完美的设计,这让人难以置信,他向我展示了游戏设计无极限。 有太多的事情启发了我去创造游戏。

对于那些希望加入游戏行业的人来说,好的建议也不是多余的。


从简单的游戏开始,不要分散。 一开始不要尝试做大事。 编写一个简单的概念,尝试实现它并将其完成。 您将发现完成该项目有多困难,并且会遵循雄心壮志。

在俄语Wikipedia中,您被记录为John Romero。 但是我读到你的真实名字是阿方索。


是的,阿方索

那你为什么叫约翰?


因为我父亲的名字也是阿方索(Alfonso),如果你说“ Al!” -我们都会回应。 我母亲决定叫我约翰,因为我父亲已经是Al。 现在每个人都像约翰一样认识我。

好的,这是从小开始的。


是的,这是从小开始的。 我妈妈叫我约翰尼。

感谢您的采访! 我很高兴再次在俄罗斯认识您。


上课! 我们一定会在TechTrain见面。

在TechTrain上以及在RUVDS团队的办公室中!


太好了!

非常感谢!


是的,谢谢!


PS以及约翰·罗梅罗的最后一个提示:


— . . , . , -. , . , . . , . .

Source: https://habr.com/ru/post/zh-CN467821/


All Articles