为什么有32个关卡的超级马里奥兄弟只要64KB?( 二 )
文章图片
与之相比 ,
贴图和音效这些美术素材是当时开发者要头疼的玩意儿 。
先说说贴图吧 , 在计算机里任何东西本质上都是一堆信息 , 一张图要包含每个像素的颜色信息 + 像素所在的位置信息 。
比如说我前一张拿来说明 1000 个字符占地 4KB 大小的示意图 , 它本身其实占用了 44 KB。
文章图片
虽然 FC 时代的主流游戏素材存储格式上和现在有所差别 , 但大致是这么个意思 。
那张 44 KB 的图尺寸是 788 * 388 , 而 FC 经典游戏《 超级马里奥兄弟 》第一关地图所有场景尺寸加起来起码得是那张图尺寸的 N 倍 。
文章图片
而且它还有 8 个场景 , 每个场景又有 4 小关 。
可《 超级马里奥兄弟 》的大小只有 64 KB , 比魂斗罗还小 。
文章图片
这时候得介绍个方法:
Tile Map。
这是个类似调色板的东西 , 游戏开发者把游戏里会出现的素材提前准备好 , 然后运行游戏的时候把素材拼接起来就行 , 这一个个素材叫 Tile, 整个素材包叫做 Tile Map。
这样一来 , 上面展示的那长长的第一关场景就不用提前搭建好再存储了 , 而是你在玩的时候重复利用提前准备好的东西 。
FC 版本的《 超级马里奥兄弟 》看似有这么多关卡 , 其实出现过的东西就这么多
【为什么有32个关卡的超级马里奥兄弟只要64KB?】
文章图片
其实这一点只要大家仔细观察就能发现 , 当时的老游戏重复素材特别多 , 例如一开始提到的《 魂斗罗 》也不例外 。
文章图片
在红白机时代的游戏 , 只要素材读取好了 , 运行的时候用
代码告诉计算机这块素材应该出现在哪个位置就行了 。
。
。
代码占地儿小啊 , 写起来不心疼!
也就是说 , 你小时候在电视里浴血奋战的地方其实是 「 赶工 」赶出来的 , 只不过这个赶工运算量并不大 , 当时游戏帧率要求也不高 , 所以完全不影响体验 。
推荐阅读
- 『皇后』清平乐曹皇后为什么要上战场 生性好强的曹皇后戎装舞剑圈粉无数
- 为什么很多产品经理止步于初阶?
- 手舞足蹈■双胞胎遇消防员手舞足蹈 双胞胎遇消防员为什么开心
- 爱国卫生■第32个爱国卫生月 市北巴士志愿者动手清洁家园
- 美政府“欲问责”世卫组织 外媒质问:为什么有的国家能更好应对疫情?
- 为什么你的直播别人看不下去?新人直播的7点建议
- 「为什么」清平乐宋仁宗为什么没有儿子? 子嗣稀薄的宋仁宗有过三个儿子却都没能健康长大
- 真正有魅力的“当代绅士”,为什么都爱卡地亚这款表?
- 陕西商洛,为什么可以“南北通吃”?
- 曾经威武的美国疾控中心,这次疫情为什么靠边站了?
