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

10秒前阅读1回复0
fayouxi
fayouxi
  • 管理员
  • 注册排名1
  • 经验值1352960
  • 级别管理员
  • 主题270592
  • 回复0
楼主

Nes 格式小游戏通常只有百十k大小,而游戏内容却不少,还有好多配乐,是怎么做到的?这个问题确实非常有难度,FC 游戏对容量的控制是非常精确的,通常一款游戏也就几十KB大小,游戏中的“图形”自然不是以“图片”的方式 *** 的,下面来讲解一下原理,希望大家不会被绕晕。 画面分割、卡通块与图形字库、调色板、音乐与音效,这些都是FC 游戏 *** 过程中常用到的原理,每一个网格就是一个 cell,每个 cell 为 8x8 的点阵,与一个字符同样大小,组成 FC 游戏画面的基本单位是卡通块,游戏的画面是由一个个卡通块拼出来的,每个网格就是一个 cell,每个 cell 为 8x8 的点阵,与一个字符同样大小。 cell 的最小单位是卡通块,每个 cell 是由 8x8 的点阵构成的,每个 cell 可以表示为一个坐标,(x, y),x 和 y 都是 0 到 7 的整数,每个 cell 的图形是由一个图形字库(CHR)中的一个像素决定的,CHR 的大小是 16x16 的,最多可以定义 256 个 cell,序号依次为 0-255。 调色板 用于给卡通块上色,FC 游戏一共可以用 53 种颜色,调色盘从这 53 种颜色中选取 3 种颜色,“透明”也算一种颜色(此时显示背景的底色),一共 4 种颜色,每个方块只能有 4 种色彩,用《恶魔城》的背景举例,将其分割为 32x3 = 96 个 cell,2x2 = 4 个 cell 组成一个 block。 CHR 无颜色或位置,图形字库是图块的形式定义,cell 的定义操作极其简单,系统规定一个 cell 由连续的四个内存单元定义,之一个单元指定 cell 显示的 Y 坐标,第二个单元为 cell 在CHR 字库中的序号,第三个单元为 cell 的显示状态(配色组合、左右翻转、上下颠倒以及显示于那个卡通页面),第四个单元为 cell 显示的 X 坐标,编程中可任意指定定义卡通的内存页面。

循环音乐是FC 游戏中常用的 *** 方式,很多游戏会使用循环音乐,还有一些游戏为了保证更好的音乐和音效,还会单独使用音乐音效增强元器件,在卡带的硬件层面做处理。

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

除了这些,FC 游戏中还有其他技术,2 个方波(主旋律)、1 个三角波(低音)、1 个噪音波(高音)、1 个 PCM(语音),这些都是音效的基本组成元素。

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

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

滚屏功能在FC 游戏中是一个常见的技术,但操作起来几乎要覆写整个画面,性价比非常低,FC 内部 PPU(预存储超块)可以预先储存超过显示部分的内容,玩家在触发滚屏操作后,可以移动游戏镜头。

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

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

0
回帖 返回手机游戏

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

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息