” 像素艺术这玩意儿真他妈难, 给它点尊重。“
” This art shit is hard. Respect it. “
在上篇中,我讲述了策展人 Jon M. Gibson 与iam8bit 的故事,留下了一个待解决的问题,也是本次主题的核心:为什么偏偏是 8-bit?几个小小的像素块,竟成了一代玩家的童年回忆。
要回答这个问题,我们得暂时离开展厅,回到机器本身——Commodore 64、ZX Spectrum、NES等等——硬件的技术限制。
在这一部分,我尝试用 "最小必要知识" 的逻辑、从三个方面说明 8-bit 艺术的魅力:
不用害怕看不懂哟,笔者我可是参考了很多可靠资料并精心整合的😉
(os:若有错误,很希望有大佬们提出建议和指正!)
“bit” 指二进制中的一位,是信息的最小单位。8-bit 一词本身指的是 CPU 一次能处理的数据宽度(8 位), 再加上当时的系统只能处理和显示有限数量的像素和颜色,所以屏幕上的内容最终都以 “像素块” 的形式呈现。先以机器 Commodore 64 (C64) 为例,让我们通过下图快速了解一个基本原理:
我们假设分辨率固定:320×200 ≈ 64K 个像素,且已知 "显存 = 像素数量 × 色深" ,现在继续拆解:
在当时,视频芯片与 CPU 共享内存,而一个强大的机器也不过只有64K的内存,也就是说,当你想要一张256种颜色的静止画面时,就几乎把整机的内存吃满了,这还不包括程序代码。怎么样,是不是已经感觉到了一股无形的压力?让我们继续探索~
为了最大限度的展现画面,聪明绝顶的工程师们想出了多个解决方案,其中最流行的便是“色彩单元” (color cells)。此方法将屏幕分成数个8×8 区域 (tile),并以把每个区域 (tile) 分成 “前景+背景” 两种颜色,成功将颜色扩充到了2个 (如下图)
但这还不够,C64的工程师们在此基础上又想到了一个名为“多色彩模式” (multicolor mode) 的方法,即将原本8x8框架中的像素变成两倍宽,虽然减少了一半的分辨率 (比如 320×200分辨率变成160×200),但换取了更多的色彩,现在,每个区域 (tile) 都可以使用4种颜色了。
现在你可能会问:“ 这么对比来看,马里奥的画面好像更多彩,那又是如何实现的呢?”
实际上,尽管不同 8bit 主机采用的图像架构不同,但它们面对的是同一个难题:显存极其有限时,必须通过 ‘色彩单元’ 去节省存储。
休息一下,接下来我将加入NES的案例来继续探索~
根据上述内容我们得知:
C64 选择的方法,是把每个像素变成两倍宽,从而在 8×8框架内,让一个“色彩单元”能使用 4 种颜色。这就是“多色彩模式”;但 NES 采用的是完全不同的思路:
它没有改变像素尺寸,而是把背景分解成一个个更大的 16×16 属性区块 (attribute block),并预先准备了 4套背景调色板;每套调色板都是「1个全局背景色(backdrop)+ 3个子颜色」,其中属性区块负责在每个 16×16 区域里,控制这4个区域 (tile) 的用色。但这样排列下来的结果就是:整屏真正在同时出现的不同颜色,大概也就二十来种。
此外,整个画面还被分成 “ 精灵图 (Sprite, 比如马里奥等动态图) ” 与 背景 (静态图) 两层。虽然NES最多可显示64种颜色,但经由上述原因,最终给与设计师的选择少的可怜,比如下图中:
还有,屏幕上一次性只能显示64个精灵图,且由于扫描器的原因,在同一条水平的扫描线上,最多只能画 8 个精灵。比如游戏里,你会看到一些角色在拥挤场面里一闪一闪的,这就是原因所在。
写到这,先不说大家了,就连笔者的头顶已经痒痒的了...
现在让我一句话总结一下这一节的要点:
对于硬件的限制,C64 的工程师们采用 “缩减分辨率以换更多颜色” 的策略;NES 的工程师们则 “将画面切成小格子并严格控制每格能用的调色板”
——虽然大家都很努力,但结果就是,两台机器的限制都迫使设计师们必须用极少的颜色、极简的造型和强烈的色块来设计每一个图形。
下一篇,就来看看设计师们是如何将创意思维发挥到极致。
---
文中相关图片为笔者实拍或来自 iam8bit 官方网站、公开媒体报道,仅用于文化研究与非商业分享。
参考资料:
-Ben Reeves. Pac-Man's Creator On The Legacy, Pizza, And The Future. Game Informer, 19 June 2020.
-Bitvint Editorial Team. How Donkey Kong Saved Nintendo and Changed Arcade Gaming Forever.
-“How ‘oldschool’ graphics worked Part 1 – Commodore and Nintendo.” YouTube video.
-“WHAT IS 8-BIT? | What are 8-bit graphics, anyway?” YouTube video
-“PPU attribute tables.” NESdev Wiki.
评论区
共 条评论热门最新