游戏界的“扛把子”,“3D 游戏之父”, 约翰•卡马克的传奇人生
作者 | 年素清
责编 | 王晓曼
出品 | 程序人生 (ID:coder _life)
约翰•卡马克(John D. Carmack II)是电脑游戏界的传奇人物,你可能没听过这个名字,但你肯定玩过他开发的游戏。
因为太聪明被认为有心理问题而退学
卡马克于1970年出生在美国密苏里州,家境优渥,父亲是密苏里州堪萨斯城最大的三家电视台之一的晚间新闻主播,他们一家住在郊外的富人区。卡马克于小学就读于当地最好的学校之一圣母玛利亚天主教小学。
幼时的卡马克养成了一种很独特的口吃习惯,在每句话后面加上简短的类似机器人那样的嗡嗡声,就像一台计算机在处理数据一样:“12乘以12等于144……嗯嗯……”
卡马克从小就显露出高于同龄人的聪明才智,二年级的时候,只有七岁的他几乎在所有标准化测验里都得到了满分,这相当于九年级的水平。
在就读高中时,卡马克因为他的聪明被认为是“怪才”,甚至因此被学校视为存在心理问题,不得已停课一年。幸运的是复课后,卡马克顺利拿到了毕业证书,并进入堪萨斯州读大学。
辍学加入游戏公司写游戏
上世纪九十年代,正是美国计算机行业高速发展的黄金时代。卡马克靠着自学成才,成功地踏入了编程领域。刚读大一的他已经编写出了许多有趣的小游戏,其中的多款被软件公司看中并买走,他因此成了几家软件公司的兼职程序员,并逐渐在游戏软件领域小有名气。
1990年,正在读大二的卡马克被一家名为Softdisk的软件公司相中,力邀他加入公司一起开发游戏软件。出于对游戏软件的热爱,卡马克毫不犹豫地接受了对方的邀请,并办理了辍学手续。
在Softdisk,摆在卡马克面前的问题是如何将游戏程序移植到个人电脑上,经过一番考量,他选择了IBM PC作为最早的游戏运行平台,游戏软件则采用的是任天堂公司风靡全球的《超级马里奥兄弟3》。最终开发出了一种名为EGA(增强型图形适配器,3D图形加速卡的雏形)的PC显示技术,这是一种16色的显示模式。
不久后,卡马克又设计出屏幕刷新技术以提高游戏图形显示的速度。
自己创业,开发出3D射击游戏
一年后,卡马克决定自己创业,他离开Softdisk,与几个志同道合的伙伴共同创办了大名鼎鼎的ID Software游戏公司。在ID Software公司里,卡马克领导团队通过一部又一部血腥暴力的作品创造不断革新着游戏类别。
然而,卡马克的野心并不止于此,很快他将目标锁定在了3D游戏的研发上。得益于当时的计算机硬件技术已发展到了相当高的水平,高分辨率显示器、大容量硬盘和内存、高速运算的CPU和图形加速卡等硬件设备层出不穷,这些都是他实现梦想的良好基础。
1992年,卡马克与另一个游戏软件天才约翰·罗梅罗(JohnRomero)共同研发出了全球首款3D射击游戏《德军总部(Wolfenstein3D)》,这款3D游戏采用了他独创的3D游戏引擎。紧接着,他又开发出了《毁灭战士》(Doom)和《雷神之锤》(Quake)两款3D游戏。一时间,所有的电脑用户都争相购买这些游戏,玩家们甚至为了能玩上3D游戏而去购买昂贵的PC。不到一年的时间,仅《毁灭战士》就售出了几百万张拷贝,带来了上亿美元的商业利润,彻底改变了电脑游戏产业。
跳槽使得新东家博客系统宕机
2013年,卡马克正式离开ID Software,转而加入Oculus Rift公司,担任首席技术官一职。
卡马克表示自己对于虚拟现实的梦想已经在幕后酝酿了几十年,现在人与技术终于走到了一起,使其能够触碰到很多潜在的想象,他认为这是技术变革史上的一个里程碑。在2012年6月的一次采访中,卡马克表示自己正在努力打造一个虚拟现实头戴式装置,并在2011年的E3大展上花了大量时间来演示《毁灭战士3》。
而最终使他下定决心全职投入Oculus的原因则是“三星的Gear VR让我下定决心要集中注意力专注在Oculus上。”
据说卡马克宣布加入Oculus公司的当天,Oculus官方博客系统宕机,原因是 “一个新成员加入导致的大规模访问行为”。
成立航空航天公司
从2000年起,卡马克开始对火箭技术表现出浓厚的兴趣。当他因为游戏公司赚到大笔的钱财之后,决心涉足航空航天领域。
2008年,卡马克联合美国民用太空的积极推动者、洛杉矶太空前沿基金会创始人里克•特姆林森(Rick temlinson)创立了Armadillo Aerospace公司,主要研究宇宙航行技术,并以开发大胆前卫的太空探险项目被外界所知。
2010年,据俄罗斯媒体报道,美国太空旅游公司太空探险(SpaceAdventures)俄罗斯办公室当天表示,俄罗斯太空旅行第一人欧金尼-科瓦廖夫将于2012年被送入太空,观光用太空飞船由Armadillo Aerospace设计,在正式载客前会进行5到6次试飞,该公司现在共收到200多份太空旅行申请。
卡马克还带领公司先后参加过几届美国航天局举办的登月挑战赛,但在“可复用亚轨道航空器项目”失败,无法争取到NASA的合同后,卡马克不得已于2013年放弃了自己投入多年精力的这个私人项目。
成就与地位
作为一名技术天才,卡马克在3D领域的贡献奠定了他在电脑游戏行业不可撼动的地位。
卡马克是最早的3D引擎开发者,并对此不遗余力的倡导和传播。《雷神之锤》刚刚问世的时候,3D加速卡在人们眼里还只是一个的空想而已,只有卡马克对3D技术的威力深信不疑,他为《雷神之锤》制作了一个专门在Verite显卡上运行的特别版本,尽管画面非常漂亮,但Verite显卡未能在市场上大获成功。随后卡马克又采用OpenGL标准为《雷神之锤》制作了一个新的版本,使所有具备3D加速能力的显卡都能以更快的速度、更高的分辨率渲染出更华丽的图像。
到了今天,一些显卡生产商在研发新产品之前甚至会先同卡马克商量一下,以确保他们的硬件可以完美地支持ID Software出品的游戏。可以说,卡马克的动向几乎可以改变显卡产业未来的发展方向。
除了3D方面的成就外,卡马克还为游戏业带来了许多其它的技术革新,例如网络代码中的客户端侦测、多重纹理、便于修改和可扩展的游戏代码、游戏内部的命令行指令、卷轴游戏背缓冲技术发明者。
开源软件的积极倡导者
和“Linux之父”李纳斯等人一样,卡马克也是开放源码的积极倡导者。
早在1995年,卡马克便放出了德军总部3D的源代码,在1997年又放出了毁灭战士的代码。1996年,卡马克将雷神之锤的源代码放到了Quake社区,一个名不见经传的程序员将其改写成了Linux版本,并将修改后的游戏发给了卡马克。卡马克不但没有认为这是侵权行为然后付诸法律,反而要求ID Software的员工们用这个版本作为雷神之锤的Linux版。ID Software在后来的日子里也同样公布了雷神之锤II的代码,雷神之锤III的代码也于2005年8月19日公布,这些代码的公布全遵循了GPL准则。毁灭战士的代码也使用GPL准则在1999年重新公布。
2012年,卡马克决定将ID Software旗下的所有开源软件全部进驻GitHub。
把法拉利跑车作为奖品送给游戏胜利者
卡马克在慈善方面毫不吝啬,他曾成立一个以自己名字命名的基金会,主要用来资助他的母校(高中)、开源软件的倡导者、游戏专利的反对者和热心的玩家。
1997年,卡马克把自己的一辆法拉利跑车作为奖品,赠送给了在一次雷神之锤比赛“赤色全歼(Red Annihilation)”的夺冠者——丹尼斯•方(Dennis Fong)。
参考链接:
https://baike.baidu.com/item/%E7%BA%A6%E7%BF%B0%C2%B7%E5%8D%A1%E9%A9%AC%E5%85%8B/1072333?fromtitle=John%20Carmack&fromid=1290553&fr=aladdin
http://pc.kuai8.com/news/96652.html
https://zhuanlan.zhihu.com/p/91954339
更多精彩推荐
☞开源吞噬世界,得开发者得天下
☞你拖后腿了吗?工信部发布前 11 月软件行业经济报告
☞小米 11 发布,售价 3999 元起;罗永浩回应败诉半导体公司;deepin 20.1(1010) 发布|极客头条☞苹果 M1 芯片预示着 RISC-V 完全替代 ARM?
☞5G与金融行业融合应用的场景探索
☞带你一文看懂 Blockchain + NoSQL数据库
点分享点点赞点在看
游戏界的“扛把子”,“3D 游戏之父”, 约翰•卡马克的传奇人生相关推荐
- 游戏界的扛把子、3D 游戏之父约翰•卡马克的传奇人生
作者 | 年素清 责编 | 张文 出品 | 程序人生 (ID:coder _life) 约翰•卡马克(John D. Carmack II)是电脑游戏界的传奇人物,你可能没听过这个名字,但你肯定玩过 ...
- 3D游戏之父——约翰卡马克
如果你问比尔.盖茨,"你最欣赏的程序员有哪些?",在他的回答中,肯定会出现John Carmack(卡马克)的名字.没错,John Carmack 在程序员中的崇拜程度,甚至到了无 ...
- 3D游戏之父 电玩游戏奇才约翰·卡马克
约翰·D·卡马克二世(John D. Carmack II,1970年8月20日-),是美国著名的电玩游戏设计开发者.著名的游戏设计公司id Software的创始人之一,id是一家专门开发电子游戏. ...
- 23 岁的 Java 成为编程界的扛把子,网友回复:这就是实力
编程语言界的扛把子 Java,不仅搭载上了如火箭版的更新速度,现在还有意让上车的用户付费买票了,那么身为 Java 开发者,下一步究竟是该弃用 23 年的老牌工具 JDK 还是乖乖付费继续搭载这列车? ...
- AI 女性界的“扛把子”,凭一己之力迫使 NIPS 改名
作者 | 琥珀 出品 | AI科技大本营 "计算机领域其实没有歧视,只是存在性别比例的差异罢了--"如果这种事件不放在台面上说,可能大家就这么想当然的认为了. 或许当你津津有味阅读 ...
- 拇指射箭服务器维护,拇指射箭1小游戏:这个拇指射箭3D游戏有点意思,拇指枪王对决...
原标题:拇指射箭1小游戏:这个拇指射箭3D游戏有点意思,拇指枪王对决 40000+游戏爱好者已加入我们! 每天推荐好玩游戏! 加入我们,沐沐带你发现好游戏! <拇指射箭>游戏小程序好玩吗? ...
- 开始利用CSDN做学习笔记,从windows 游戏编程大师技巧和3D游戏编程大师开始
利用两个月的空余时间将windows 游戏编程大师技巧和3D游戏编程大师技巧看了一遍. 第一遍读的并不深入,代码也没有仔细研究.特别是3D下册,基本只是草草浏览了一遍而已.这一遍是为了对整体有个印象和 ...
- 3D休闲游戏夺宝向前冲3D游戏源码H5+安卓+IOS三端源码
cocos creator3D1.2休闲游戏夺宝向前冲3D游戏源码H5+安卓+IOS三端源码,开发脚本为typeScript方便扩展和阅读,支持cocos creator3D版本,完整的源码可直接运营 ...
- AI女性界的“扛把子”,凭一己之力迫使NIPS改名
作者 | 琥珀 出品 | AI科技大本营 "计算机领域其实没有歧视,只是存在性别比例的差异罢了--"如果这种事件不放在台面上说,可能大家就这么想当然的认为了. 或许当你津津有味阅读 ...
最新文章
- 一文看尽飞桨PaddlePaddle最新升级:5大优势,更低门槛使用深度学习
- opencv_python关于Qt的错误
- Mysql 数据库字符集转换及版本升级/降级的详细教程
- 16个最有趣汉字,说透为人处世
- 银行计算机管理系统开发背景,银行储蓄管理系统的设计与实现
- java实现网站paypal支付功能并且异步修改订单的状态
- win10系统盘分多大合适?
- 怎么用虚拟机搭建云服务器,利用虚拟机搭建云服务器
- python源码剖析—— python中的字典对象
- 吊打何同学?猛肝24小时,用6000元成本打造 AirDesk!
- JavaScript 原形链
- vue : 无法加载文件 C:\Users\lenovo\AppData\Roaming\npm\vue.ps1,因为在此系统上禁止运行脚本。解决方法
- 2020年南京大学计算机系九推面试
- linux文件名带星号,Linux安装之bash星号用法
- 徽章机器人gba_《真型机器人》GBA简单攻略
- CV领域Transformer之Self-Attention浅薄理解
- Chapter15 Principles of Metabolic Regulation
- 使用thymeleaf的th:src显示豆瓣电影api的图片
- Java怎么表示正无穷大和负无穷大
- “阿里中台架构”15篇刷屏文章精选,快收藏!
热门文章
- 云服务器安装MYSQL
- 最新小程序授权+php后端(附demo源码)
- CPT208 人机设计 笔记
- 好架构是进化来的,不是设计来的(58架构演进)
- 基于springboot jpa驾校管理系统源码
- Android UI性能优化 检测应用中的UI卡顿
- 电力系统非线性控制_第二届电气,控制,自动化和机器人国际学术会议 (ECAR2020)...
- b站尚硅谷springmvc学习视频:springmvc文档
- 电脑管家用户的bandizip右键解压选项启用
- 编写选择结构程序,输入个人月收入总额,计算出他本月应缴税款和税后收入