
写在开始:
本文对读者假定了以下前提:
读者对PC-98有起码的了解,并具备一定的计算机硬件、计算机图形学基础知识。若这对您是崭新的领域,请首先检索相关信息,以便后续内容理解。
笔者最近对PC98十分痴迷,一直在想方设法研究pc98风格的游戏与绘画风格,但是中日英语言的资料都太少了,唯一见过的绘画流程,是管上的一个模糊的MPS(multi paint system)绘画视频。
笔者最感兴趣的,是PC98 4096色色板 同屏16色的前提下,所呈现出的色彩过渡,也即抖色(看上去十分像dither中的ordered dithering,但远比其精细)。这种独特的画面风格十分精致,表现出画师浓郁的个人特色,在有限的色彩空间里,展现出了极为丰富的色彩体验,比起大开大合的欧美游戏,颇有“螺蛳壳里做道场”的匠人之风。
那么,PC98美术中的抖色,是来自当时某绘画软件(目前只找到了mps)中的某个功能,还是当年的画师真的是一个个像素点画上去的?这方面信息实在太少了。动漫《16-bit的感动》中有一些对绘画过程的展示(疑似使用MPS),从中可以得出,当年原画制作的大致流程是:画师首先在纸上绘画线稿,然后扫描成电子版,并导入PC制成黑白线稿,然后根据标记的颜色编号对大色块上色(这一步与彩色漫画、赛璐璐相似)然后进行颜色过渡处理,最后经过一系列调整后完成。最可惜的就是没有展示出抖色的过程。
现代像素绘画软件(aseprite、resprite等)大多只支持以某个图案为画笔笔刷,画出抖色,或使用索引颜色(index)规定颜色数量以对现代图片或手绘原稿扫描件进行颜色数量限制,以实现类似的显示效果。当然,其机械自动处理的效果,也只是符合了pc98图像的一些标准,比如分辨率、同屏颜色数量,与手工绘画的精细程度仍有极大差距,一言以蔽之——没人味儿。
笔者始终怀疑当时的软件是有某种独特的抖色工具的,用这种工具在两个颜色的交界处涂抹,就可以自动生成抖色,哪怕是衣物、肌肤这种不规律的形状中。若没有这种工具,那么当年这些画师及其助手的匠人精神...真是太恐怖了。
PC98的游戏是否应当归类为像素艺术,始终是争论的话题。与传统2d主机游戏相比,PC98游戏的分辨率“太高了”;站在创作者角度,恐怕当时的许多制作者也不是以制作像素艺术为目标,而是基于当时的硬件条件,在有限的机能里尽量制作出好的画面表现。
随着时代的发展,已不能简单地把像素艺术归类为复古艺术,在机能进步巨大的今天,像素艺术已从“妥协性”的艺术风格中超脱出来,变成了独立的艺术门类。从事实上看,许多坚持到win时期的pc98游戏开发社团后来推出的游戏已不再是pc98上的16bit像素风格,而是逐渐向现代画面过渡。这里面除了当时玩家对更高清、更高分辨率、更高色域的追求的时代大背景,也有一部分因素是,这些游戏的像素索引风格画面本身就是囿于机能限制,对原画所做的的一次降维,而非制作人员的终极目标。
不过大浪淘沙,就像许多人死后才出名一样,PC98早已退出历史舞台,但这种美术风格仍具有其先进性。按照“作者已死”的观点,笔者妄言一句:PC-98的游戏美术风格,是人类像素艺术的巅峰。
98相关资料较少,也可能是笔者太不擅长收集信息,以下是实际体验中,总结出的一些游玩技巧:
① 若想在硬件层面复刻98,则具有诸多困难。pc98的硬件架构十分独特,现有桌面硬件平台不能像黑苹果一样安装pc98的原版系统(存疑,欢迎指正),只能使用np21等模拟器体验其系统。由于其独特性,PC-98实机价格很高,且后期维修成本和难度都很大。
② PC-98游戏令后人怀念的独特美术效果,CRT独特的物理抗锯齿和像素融合也占了一部分功劳。
不过事实上CRT显示器并不是和pc98完全绑定的显示设备,NEC也曾出品过液晶屏幕的98笔记本电脑,锐利的显示效果更接近于现代液晶显示器。不过由于分辨率问题,其屏幕像素间距远大于现代液晶屏幕,大致可参考GBASP、NDSILL的颗粒感屏幕,当然,后者像素间距更大。液晶屏幕的显示效果更为清晰、锐利,不过个人还是感觉CRT效果好。
笔者妄言,这是一个潮流变迁的过程,在复古主机(Saturn、SFC、PS1等)圈子中,许多玩家喜欢使用RGB视频信号,因为其显示效果最为清晰锐利,但笔者实际上更喜欢AV信号较为模糊、融合的感觉,实际上许多游戏也正是利用了av信号的特性实现了独特的美术效果,如经典的恶魔城月下中,眼睛只是两个红点的德库拉。不过必须承认的是,RGB在许多机器上的色彩鲜艳程度远强于AV信号。
看到这里,如果你也摩拳擦掌,准备搞一台CRT,则还需要面对以下的一些困难:
1、国内大多家庭CRT显示器(不管是你家里的老机器,还是心血来潮去咸鱼同城随便淘一台)活跃时间大多为90年代末至2010年,其最低带宽大多为31khz,尽管在今天的视角看来是不折不扣的老机器,但在PC-98面前仍为后辈,是不能正确接收并显示pc98独特的24khz(アナログRGB 15ピン”接口,也就是 Japanese 15-pin RGB(D-sub 15)。)信号的。并不是简单的视频接口转接器就能解决的问题,而是由CRT显示器物理性质决定的。
那么,是否可以使用低解的方式,倍乘分辨率呢?
尽管有无数大佬在这个领域努力,但我们仍认为现代显示设备无法完全复刻、或超越当时显示设备对当时游戏的某些显示效果。
若对复古游戏有所涉猎,则可能了解过batocera的CRT显示器低解功能,即把240p(15khz)的信号变为31khz 120hz,以达到上述CRT显示器的标准,实现带有真正物理扫描线的画面。那么可不可以把PC-98的640 400,或640 480画面倍乘至1280 800或1280 960,并通过CRT Emudriver写入独特信号,使上述显示器能够正常显示呢?还是有许多问题。
1.1 CRT的带宽与分辨率的换算公式大致可以表示为:
B(带宽)=Htotal(水平总像素)×Vtotal(垂直总像素)×frefresh(刷新率)/2
其中,Htotal(水平总像素)×Vtotal(垂直总像素)×frefresh(刷新率)也可以叫做像素时钟(PixelClock),而“除以 2”的原因是——视频带宽指的是模拟信号的最高频率(像素信号要从黑到白变化,相当于半个周期),所以最大像素频率的一半就是信号的最高带宽。
我们可以看到,刷新率也是带宽的一个决定因素。
1.2 之所以使用基于Linux的batocera+Retroarch进行低解,而不使用更为易用的Windows+Retroarch,问题就出在windows的底层显示逻辑上。
Batocera的显示子系统使用 DRM/KMS(Direct Rendering Manager / Kernel Mode Setting)。这意味着它可以直接控制显卡输出模式,不依赖于 X11 或 Wayland。
在笔者作为玩家,浅尝辄止的配置过程中,通过batocera配合Switchres,原来15khz的信号变成了31khz 120hz,得以在上述crt显示器上游玩。那么是不是就可以倍乘分辨率,写入一个24khz的两倍的48khz的信号呢?
笔者踩过这个坑了,48khz 120hz的信号超出了笔者手头CRT显示器(Samsung 793DF)的最大带宽,48khz 60hz的信号又显示失败。如果手头有极为高端的CRT显示器(据笔者所知是有的,包括但不限于Sony),可以尝试一下48khz 120hz的方案。
关于batocera方面的自定义分辨率,笔者缺少相关知识背景,短时间内无法复现,且batocera对键鼠的支持较差,pc98及dos的游戏在其系统中也只是勉强能玩的地步,大多数batocera的使用者也主要游玩主机平台的游戏,这方面的支持和信息都比较少。
笔者曾对上述逻辑在Windows进行过粗暴的尝试,但始终无法超脱出其显示底层逻辑,也无法得出正确的结果。
能力有限,若此思路能抛砖引玉,欢迎各位朋友继续深入。
2、那么CRT电视,或CRT彩监呢?很可惜,它们大多为电视节目或同时代主机设计,除Sony-PVM部分型号(存疑),大多只支持到15khz信号,也恰好避开了独特的24khz。
3、就没有合适的显示器吗?其实有。或者说,当然有了,不然当时的人们是怎么用的?不过,由于PC-98是为日本本土开发的设备,流入其他地区的设备少之又少,在国内二手市场中,支持pc98信号的NEC multisync、Sony、Eizo等产品线的三频CRT显示器价格均为四位数左右,这些设备配合实机,能带来原汁原味的体验,当然价格也是水涨船高,且可遇不可求。并且,这些不能轻松显示中文的机器,笔者猜测当年也并非作为家用机器引进,而是作为外企生产线的工控机,或干脆是后来由日本带回国内的,其服役时长想必不短,甚至已经超出设计年限,若无电气知识以及对应型号维修说明书(这个尤其重要),后期维护恐怕相当困难。NEC也曾出品过与现代HTPC概念类似的PC9821 CX2,支持av、s端子信号,但相关资料太少,暂不妄加评论。
③ 说了这么多,绝大多数人最后恐怕还是和笔者一样,在Windows平台使用np2及其分支模拟器游玩这些游戏。那么,有哪些对我们实际可行的建议呢?
1、若粗暴地使用全屏模式,则会感觉画面莫名模糊,这个情况也在许多老游戏全屏时出现。这是因为这种缩放并没有实现点对点的多倍缩放。
使用过2k显示器的玩家可能有这种经历。如果游玩一个1920 1080分辨率的游戏,则会感觉十分模糊,同样的情况用4k显示器则不会有这个情况。这是因为4k是1920 1080的整数倍,只需把以前的一个像素点变为同样颜色的4个 则无损拉伸成了4k画面,这个过程中不涉及次像素渲染,画面依旧清晰锐利,这也是为什么目前出现了规格为同时支持4k 160hz和1k320hz显示器的原因。
现代显示器的分辨率 1920 1080 或 2560 1440、3840 2160,均不是640 400 或640 480的整数倍, 而是640 360的整数倍。这也就导致在高度追求像素精度的pc98游戏中,Windows上的画面全屏后不是成倍缩放的,两个相邻像素在放大的过程中会产生其他颜色插值的像素,这种缩放方式在游戏开发中称为linear,而实际上像素游戏(再次应当指出,许多98游戏不是主动做像素游戏,而是当年硬件条件限制,螺蛳壳里做道场)应使用的缩放方式为最邻近(nearest)。尽管我们追求CRT的像素融合、物理抗锯齿的效果,但linear无论原理还是效果都与其相差甚远。
所以,如看重游戏游玩过程中的美术效果,除了全屏游玩,将窗口大小调整至其整数倍,也是不错的选择。
2、与追求扫描线的复古主机不同,pc98的显示并非全部带有扫描线。扫描线对于分辨率更低的复古主机,具有重要的意义。扫描线使得其画面像素过渡融合更为柔和,人脑在这个过程中自动补足了一部分画面。而对于分辨率高一些的pc98,扫描线则并非必要。
通过模拟器游玩选择滤镜时,不需要选择带有扫描线的、文件名带有Scanline的shader,当然,如果你认为这样的显示效果更合口味,也不失为一个好选择。不过必须指出的是,这个带有扫描线的crt 滤镜下的pc98游戏画面,实际上并不是对当年风格的原教旨主义还原,而更像是复合各时代美术特征的产物。
3、PC-98的游戏支持中文极少。若对某款名作感兴趣,则可以首先查一查有没有移植到DOS平台的汉化版本,繁体字总比日文要便于理解。
若无汉化版本,出于字库、机能等一系列因素,PC98游戏是较难汉化的。若显卡支持,可以试试同屏翻译,不过翻译出来的字体会对画面美观产生一定影响。如果有兴趣在翻译这方面深耕,笔者建议使用unifont的点阵字体,风格与98类似。
4、许多pc98的名作,在此不再提及,是有win平台复刻版的。如果你不追求pc98的美术风格,或认为更现代一些的画风更合口味,再或认为原版系统太过复杂,则可以尝试复刻版。
End
后续若有时间,会进一步完善以上内容。
总的来说,PC98及其游戏,由于市场战略、年代、机能等限制,并未在全世界范围内具有较大影响力。但其“带着锁链跳舞”的游戏美术,以及独特的游戏风格,至今仍不断吸引着无数笔者一样的爱好者反复研究。
本文只是笔者作为爱好者实践中的一些心得,在专业性和正确性上仍难以完全保证,不适合作为所提情景的最终完美方案。旨在抛砖引玉,引发更先进的思考,为后人研究丰富资料。
欢迎友好交流,批评指正,转载请注明来源。