游戏黑客之道(3)
时间:2023-01-27 08:14 来源:网络整理 作者:采集插件 点击:次
这个过程正如 ESR 在文中所论述的:“从书本上你能学到编程语言的特征——而那只是知识的皮毛而已,是你头脑中的观念把这些书面知识变成了真实可用的技能,而这一过程也只有通过不断实践和虚心做学徒才能学到。因而你具体能做的就是 (a) 读代码 ,(b) 写代码 。” 不是止于简单的玩乐,开始研究并动手修改游戏,这是 Carmack 作为游戏黑客的起点。“一次,Carmack 找到了《创世纪》里处理角色的代码,稍作修改,他就给自己增加了一些额外的能力,这是他第一次体会到凭空创造东西的乐趣。”而且,“作为一名程序员,他不需要依赖于其他人,只要他的代码逻辑正确表述了他定义的规则,它就会工作得很好,一切都那么合理。” Carmack 发现他最喜欢的是图像编程:创作一些二进制代码并看着它们给屏幕带来生气;这种直接反馈所带来的满足感是其他编程工作所不具备的……他还意识到,如果他想进一步探索编程世界,那么,他必须要从游戏入手。他不是那种坐着等待灵感的人,于是他直接沿用了现有游戏中的构思。《造影》(Shadowforge)是他的第一个游戏,它和《创世纪》很相像,但它也有几处独特创新,譬如玩家可以朝任意方向攻击。 主营照相机电池的夜鹰公司(Nite Owl Productions)花一千美元买下了《造影》,这是 Carmack 生平第一笔收入,他用这些钱把苹果机升级到了苹果II GS。 更重要的是技能。 ⒈Learn how to program. Carmack 在他1998年2月的 .plan file 中写道: 我的人生就是以知识的积累和学习的不断深入来分为不同阶段。 我启蒙阶段用的是学校里的苹果II型机,但当时的条件局限了我的学习速度和深度。今天的状况已经好多了,只要有一台便宜的二手 PC 机、一张 Linux 光盘和一个因特网的账号,你就拥有了足够的工具和资源,你就可以达到任何你期望的编程境界。 《软盘》的头六个月对我而言如同活在梦里,平生第一次,我身边有了比我更博识的程序员(Romero 和 Lane Roath),我手边有了大量的书籍和资料,而且我可以全身心投入到编程中,那真是一段好时光。 接下来的两年,直到 Doom 和几个家用机版本移植完成,我在稳步提高着我的知识面和技术水平,其中包括:更深入的图像编程、网络、Unix、编译原理、跨平台、RISC 架构等等。 Quake 开发的第一年简直如同腾云驾雾,有迈克尔·亚伯拉什作为顾问,我尝试了大量新鲜课题。如果科班出身的图像程序员们知道我在写 Doom 时有多么业余,他们肯定会大吃一惊,那时的我甚至不能正确地剪切墙体多边形(这就是为什么我用了那莫名其妙的极坐标系统),Quake 逼着我踏上正轨,同时探索出新思路。 Quake 开发的最后半年是在痛苦中度过的,那时我满脑子只想着把这该死的东西做完,当然,一切付出到后来都有了回报,但我绝不怀恋这段时光。 Quake2 开发的过程中,我的学习经历又得到了进一步扩充:GLQuake、quakeworld、radiosity、OpenGL 工具开发、Win32 编程等等,与此同时,我也有了不少关于下一步如何做的想法。 我认为接下来的 Trinity engine 将和 Quake 一样硕果累累。我在一些课题上已经有了非常深入的理解,我还正在尝试一些图像编程以外的全新领域,它们将会和我所有其他方面的工作产生积极互动。 ⒉Get one of the open-source Unixes and learn to use and run it. 跟今天的情形不一样,Carmack 在五年级接触的是 Radio Shack 计算机培训班的 TRS-80 计算机,TRS-80 系列 Model I 型于1977年8月发布,操作系统只是一种基于 ROM 的 BASIC 语言环境,更多细节可见 。(大多数的二十世纪八十年代的家用计算机都有一个驻留在 ROM 中的 BASIC 解释器,以此能让计算机直接引导到 BASIC 环境。因为在这一个时期的 BASIC 的知名度的上升,一些杂志刊登了用 BASIC 语言写的游戏、工具和一些其他程序的完整的代码。 ) 这便是 Carmack 开始自学 BASIC 编程,研究并动手修改游戏时期的学习环境。而 Ward Christensen 和 Randy Seuss 编写的第一个公共 BBS 系统(Bulletin Board System:电子公告牌系统)自1978年上线便迅速传播开来,无数的 BBS 系统被架设起来,其中一些像 Stewart Brand 的 The WELL(全球电子链接,Whole Earth ‘Lectronic Link)便成为 Carmack 这样的黑客或玩家们的温床。他们在这里不光是研究游戏,还讨论黑客文化,甚至还有盗用电话线路以及炸药……其中最为重要的一点,我想,是这些早期的虚拟社区让 Carmack 开始意识到,他想学的东西以及他要做的事情,其实早已不在学校系统之内。 (责任编辑:admin) |