80年代游戏开发者的辛苦困境

开发 游戏开发 游戏开发
现代大型游戏似乎都是开发者在推进硬件需求,等待硬件逐渐跟上脚步(PC);或是至少在硬件相对固定的环境下(主机),开发者受到的限制其实也没有 那么地大。但在家用电脑游戏的早期,情况可完全不是这样的 — 因为硬件上严重的限制,游戏开发者必需要用各种偏门的方法来达到显示彩色的目的。

现代大型游戏似乎都是开发者在推进硬件需求,等待硬件逐渐跟上脚步(PC);或是至少在硬件相对固定的环境下(主机),开发者受到的限制其实也没有 那么地大。但在家用电脑游戏的早期,情况可完全不是这样的 — 因为硬件上严重的限制,游戏开发者必需要用各种偏门的方法来达到显示彩色的目的。

YouTube 上的一位 iBookGuy 仁兄就做了一则小视频,解释当时的开发者,为了让电脑能显示颜色,有多么地辛苦,像上面这张图,就是在「每个 8×8 的方块最多只能有两种颜色」的限制下完成的,不能不说实在是很了不起呢!

[[146270]]

视频和简短的解说在继续阅读里。

首先,要先了解的是硬件限制的由来。现代电脑大多数的时候,独立显卡都有自己的内存,但过去的电脑则是和现在内建显示芯片的处理器一样,是共用主内 存的。相对于现代电脑动辄几 GB 的内存,早年的电脑***的大概有 64KB,而差一点的可能只有 16KB。对于一个分辨率 320×200 的屏幕来说,这就一共有 64,000 个像素,就算是黑白的,也需要 64Kb,或 8KB 的内存空间来存储所有内容;然而换成 16 色(每个像素 4bit)的话,内存需求就会暴增到 32KB,一下子除了***端的电脑之外,其他电脑都跑不动了。

所以在连 16 色都不能轻易使用下,游戏开发者只能用一些小技巧来绕过色彩的限制。前面提过的「每个 8×8 的方块只用两种颜色」就是其中一种技巧,这样会产生画面色彩丰富的错觉,但实际上内存只会占用到 9KB 而已。另一个技巧是用降低分辨率的方式来增加色彩,将分辨率降至 160×200 的话,就可以在每个 4×8 的方块里填入四种色彩,但一样只占用 9KB 的内存。第三种方法是将特定的方块颜色组合存在一起,成为独立的小图档(sprite),这样主机存取的时候就不再是一个一个像素去定址,而是直接显示小 图档。任天堂的游戏机就大量使用了这样的技巧,(小)玛莉欧本身就是就是有四个小图档拼合而成的。

我们目前看到的视频是上集,iBookGuy 答应会再续集里再介绍更多前辈们用来绕过硬件限制的技巧呢。

责任编辑:王雪燕 来源: engadget
相关推荐

2012-04-09 21:58:16

愤怒的小鸟

2011-04-27 09:34:18

Android盈利困境Android

2013-01-17 13:06:47

移动开发者营销推广

2024-03-05 19:17:37

2009-03-11 14:51:03

80后职场压力

2013-12-31 09:42:40

手游出海游戏开发者

2012-03-12 09:31:40

2011-12-05 23:23:59

App Store

2012-03-26 09:35:00

手机游戏开发者

2012-05-27 20:26:08

2011-01-28 15:20:53

开发者MGF

2012-09-19 10:25:56

iPhone 5游戏开发者

2011-04-25 16:56:34

Greedy Bank游戏开发独立开发者

2012-03-26 16:00:17

FLASH开发

2013-01-07 08:42:43

开发者

2012-06-25 10:11:48

2011-04-06 15:22:00

虚拟引擎移动游戏开发

2013-11-26 10:06:23

天翼开放平台开发者

2015-09-08 09:38:11

2015-09-23 09:34:02

独立游戏
点赞
收藏

51CTO技术栈公众号