快审qq
分类目录快审
软文外链发布
原创文章撰写
 
快审详情

nes格式小游戏一般只有百十k大小,而游戏的内容却不少,还有好多配乐,是怎么做到的?

 发布时间:2020-02-05 09:00:00    所属栏目:社会

这个问题还是非常有难度的,FC游戏对容量的控制是非常精确的,通常一款游戏也就几十KB大小,游戏中的“图形”自然不是以“图片”的方式制作的。下面就来讲解一下原理,希望大家不会被绕晕。hKV影风网

画面分割hKV影风网

卡通块与图形字库hKV影风网

调色板hKV影风网

音乐与音效

hKV影风网

画面分割

组成FC游戏中画面的最小单位是卡通块,FC游戏的画面是用一个个卡通块(cell)拼出来的。每个网格就是一个cell,每个cell为8X8的点阵,与一个字符同样大小。hKV影风网

hKV影风网

《超级马里奥兄弟》中,马里奥在吃红蘑菇之前为即由4个cell组成,当吃了红蘑菇之后身体长大一倍,变为由16个cell组成。hKV影风网

hKV影风网

一个问号图形也是由4个cell组合拼成的(砖也是),通常将4个cell组成一个元素成为block。hKV影风网

hKV影风网

hKV影风网

卡通块与图形字库

cell有一个图形字库称为CHR,这个库的大小是16X16的,一次最多可定义256个cell,序号依次为0-255。游戏中的所有cell都是从CHR库中调用出来的,因此游戏中的所有画面的cell其实都是重复使用的,图片容量就被限定在这16X16=256的CHR之中。hKV影风网

hKV影风网

调色板

调色板是用来给卡通块上色的,FC一共可以用53种颜色,调色盘从这53种颜色里选取3种颜色,“透明”也算一种颜色(此时显示背景的底色),一共4种颜色。这4种颜色用来给方块上色。这就意味着每个方块只能有4种色彩。hKV影风网

用《恶魔城》的背景举例,将其分割为32×30 = 960 个cell,2×2 = 4个cell组成一个block hKV影风网

hKV影风网

CHR没有颜色或位置,以图块的形式定义hKV影风网

hKV影风网

hKV影风网

cell的定义操作极其简单,系统规定一个cell由连续的四个内存单元定义,第一个内存单元指定cell显示的Y坐标、第二个为cell在CHR字库中的序号、第三个为cell的显示状态(配色组合、左右翻转、上下颠倒以及显示于那个卡通页面),第四个为cell显示的X坐标。编程中可任意指定定义卡通的内存页面。hKV影风网

hKV影风网

调色板被分成几部分,但是通过在不同区域之间共享颜色可以巧妙地隐藏这一事实。大门中间的红色与周围的墙壁融为一体,黑色背景模糊了城堡和大门之间的界限。hKV影风网

hKV影风网

循环音乐

为了节约容量,很多FC游戏都会使用循环音乐。有一些游戏为了保证更好的音乐和音效,还会单独使用音乐音效增强元器件,在卡带的硬件层面做处理。hKV影风网

2个方波(主旋律),1个三角波(低音),1个噪音波(高音),1个PCM(语音)hKV影风网

hKV影风网

运动中的角色

FC红白机会将运动中的角色储存于显卡的特定内置储存区域,这样我们看到的角色会以一个整体的结构进行移动,就像上面提到的小马里奥是4个cell拼成的一个整体。角色的显示是覆盖背景的,无论背景如何设置,在角色覆盖到上层时会被设置成角色的颜色。hKV影风网

hKV影风网

滚屏

FC之前的游戏,在滚屏操作时几乎要覆写整个画面,性价比非常低。FC内部PPU可以预先储存超过显示部分的内容,玩家在触发滚屏操作后,可以移动游戏镜头。 hKV影风网

FC显示画面与声音原理非常复杂,大家就简单了解一下吧,任天堂的黑科技太多了 hKV影风网


最新资讯

资讯推荐:

影风导航首页 | 网站新闻 | 网站地图 | 晋ICP备18008907号-3