内容提要
文章分析《慟哭そして...》中世嘉土星的三种图片格式:DGT2带文件头和16位RGB像素,解析最方便;Raw 16×16无文件头,像素按16×16宏块组织;Mapped 2×2采用Tile/Cell思路,通过Map、Character和调色板还原颜色。三者区别在于图形数据的组织与复用方式,以适应有限存储和VRAM。相关代码已开源。
延伸解读
三种格式的适用场景
文章指出,DGT2、Raw 16×16 和 Mapped 2×2 分别对应不同的游戏素材。DGT2 用于 LOGO,Raw 16×16 用于结局 CG 和全屏人物 CG,Mapped 2×2 用于人物立绘和全屏建筑背景。这种分工反映了存储与渲染需求的平衡:独立图片适合 DGT2,大尺寸连续图像适合 Raw 宏块,而需要复用和节省 VRAM 的素材则采用 Mapped 2×2 的 Tile 结构。
解析难度与数据组织
从解析角度看,DGT2 最方便,因为文件头直接给出宽高和颜色模式,且无调色板。Raw 16×16 没有文件头,需要预先知道尺寸,且像素按 16×16 宏块排列,不能当作线性流处理。Mapped 2×2 最复杂,涉及 Map、Character 和调色板的多级索引。因此,处理不同格式时需采用不同的解析策略,不能一概而论。
土星图形系统的限制与设计
文章提到,世嘉土星 VDP1 和 VDP2 都支持 15-bit RGB(各 5 bit,共 32768 色),但游戏图片并不直接以 RGB 保存。为了适应有限存储和 VRAM,采用了多种数据组织形式。Mapped 2×2 的 Tile/Cell 思路正是为了复用图形数据,减少重复存储。这体现了在硬件限制下,通过数据组织优化来平衡画质与容量。
Q&A
世嘉土星的VDP1和VDP2支持多少种颜色?
世嘉土星的VDP1和VDP2都支持15-bit RGB,即R、G、B各5 bit,可以表示32768种颜色。
《慟哭そして...》中DGT2格式有什么特点?
DGT2是世嘉土星的官方图像格式,游戏中出现的是DC模式,没有调色板,像素以16-bit RGB数据保存,图片宽高直接保存在文件头中,解析最方便。代表文件是游戏中的两张LOGO。
Raw 16×16格式的像素是如何组织的?
Raw 16×16格式没有文件头,像素以16-bit RGB数据保存,并按16×16宏块组织。每个宏块由4个8×8 Cell组成,占据256个像素即512字节。
Mapped 2×2格式是如何还原颜色的?
Mapped 2×2格式采用Tile/Cell思路,通过Map指定Character,Character组合成8×8 Cell,再通过调色板将像素索引转换成实际颜色。
这三种图片格式的主要区别是什么?
主要区别在于图形数据的组织与复用方式:DGT2是完整独立的格式,包含文件头、调色板和像素数据;Raw 16×16是裸像素数据,无文件头,按16×16宏块组织;Mapped 2×2采用Tile/Cell思路,通过Map、Character和调色板还原颜色。它们都是为了在有限存储和VRAM条件下复用图形数据。
哪里可以找到这些图片解析算法的代码?
相关代码已在Github项目开源,可以查看。