https://photos.app.goo.gl/PNxdLqrJnuAPdagn9
https://photos.app.goo.gl/dh66HumLfjkRt3zh9
这本书的原文版本我很早就从美国亚马逊购入 (200x 左右), 但在书架上摆了很久,
因为英文实在没好到可以顺畅的看懂。
这次的简体中文版本是再版的, 把握这次机会赶紧购入。
我也曾有过这样的梦想, 写出自己的游戏。但是我从来没写过 pc game,
只有在玩这些 pc game, 这是我和两位 John 不同的地方, 虽然我因为 pc game
而进入软件开发这行业, 但从来没写过游戏, 而如果不是看了 doom 启示录,
我几乎快要忘记这个梦想了。
勉强和游戏沾上边的只有《[game] - 文字大富翁》, 这是我移植别人写好的版本。
https://descent-incoming.blogspot.com/2014/10/game.html
后来勉强做了一个决战俄罗斯方块
https://www.youtube.com/watch?v=KSWG_kXU8e4
书中人物:
John Romero (罗梅洛)
John Carmack (卡马克)
看到2个 John 可能会让人想到苹果的2个 steve。
这本书有讨人厌的推荐序, 我是一个习惯从第一页看到最后一页的读者,
但我从来不对这些推荐序感兴趣, 这本书有 6 篇推荐序, 这就算了,
每篇的长度还不少。
对 id software 的印象是从“德军总部3D”开始,
原来之前还有个游戏是“德军总部”, 3D 的版本就是从这个游戏的构想而来。
书上先从罗梅洛和卡马克的生平开始介绍起, 然后怎么认识,
怎么在同一间公司一起开发游戏。
卡马克在当时的 pc 上开发了 2d 卷轴技术, 这是可以让游戏平滑移动的效果,
当然现在的玩家可能已经无法体验这个技术的强大了,
现在的游戏如果还不能平顺的移动, 应该连免费下载都没人要玩。
总之, 靠着这个技术, 他们实做了超级玛莉的第一关, 是的, 就是
任天堂的那个超级玛莉一代, 罗梅洛寄了这个展示给任天堂,
看看能不能有合作的方式, 可以开发 pc 版本的超级玛莉,
不过任天堂当时并不想在 pc 开发游戏 (现在好像也不想),
所以我们就没有缘份看到 pc 版本的超级玛莉了。
再来就是德军总部3D -> 毁灭战士 -> 毁灭战士 2 -> 雷神之锤的故事,
每当卡马克改善了目前游戏引擎之后, 罗梅洛就会为这个引擎设计一个新的游戏,
这系列的游戏让他们赚了大钱, 大家都买了法拉利跑车,
而卡马克在一场毁灭战士的比赛中, 捐出他的第一台跑车当作冠军奖品,
再给冠军 5000 美金把这台法拉利运回家。而很久之后, 罗梅洛在大彻
大悟之后, 也做了一样的举动, 罗梅洛不再迷失金钱、物质享受上,
反璞归真, 找回制作游戏的本质。
和苹果的两位创办人类似, 苹果是由两位 Steve 创办, Steve jobs, Steve Wozniak
而 id software 则是两个 John, 两位 John 一开始也是在 apple II 开发游戏,
后来才转到 IBM PC 上。
在那个年代, 有很多类似的游戏纷纷出笼, 被称作是 doom like game, 原来是
id software 把游戏引擎授权给其他游戏商使用, 这还真是一个聪明的点子。
卡马克遵循着骇客精神, 把游戏引擎 open source, 这可真是不简单,
商业公司有那个神经烧坏了的家伙会这么做。而他们的德军总部3D
被玩家修改成不同的版本时, 卡马克和罗梅洛都很高兴,
但其他没这骇客精神的人就不开心了, 认为他们的东西被侵犯了。
而在开发毁灭战士时, 为了方便玩家修改, 卡马克还特别设计,
让玩家可以更容易的修改毁灭战士的关卡,
有个版本是把毁灭战士修改成星际大战的人物, 这一定很酷。一般商业至上
的公司一定不会让玩家这么做的吧!
在那个年代, 很多程式员都被一本叫《骇客》的书给影响了,
卡马克和罗梅洛都有这样的骇客精神, 他们认为分享是一件很重要的事情。
再完成雷神之锤后, 卡马克逼着所有股份成员开除了罗梅洛, 罗梅洛挟著其高知名度,
开了新的公司, 企图制作一个更好的游戏, 可惜不是很成功,
有时候金钱、权力真的会让人迷失。
雷神之锤的引擎让卡马克商透了脑筋, 从微软挖来了迈克尔·亚伯拉什
(Michael Abrash), 有在开发游戏图形的人一定看过他的书, 厚厚一本,
卡马克也是看他的书学习游戏画面怎么开发的。
doom 的暴力也带来许多社会议题, 相关人事把学生杀人事件怪罪到 doom 头上,
企图为这样的行为找个代罪羔羊, 当然也间接带给 id 不少麻烦。
很佩服卡马克的专注, 集中精神在同一件事情上并不容易, 能持续的坚持更是困难。
这算是本历史书, 介绍了第一人称视角游戏的历史, 如何在游戏界引领风骚,
2 位创办人从合作到分道扬镳, 若你也是游戏开发人员, 应该读读看本书。
ref:
A Visit To id Software Circa 1993
第一人称射击游戏教父,首款3D游戏的开发者,传奇程序员——约翰·卡马克
这是另外一个有关卡马克的传奇算法:
关于平方根倒数速算法(雷神之锤3,牛B)
一个Sqrt函数引发的血案