先说结论:土星的VF2跟街机的VF2根本不是同一个游戏。
街机原版运行在Model2基板上,其硬件性能远高于土星,AM2团队是吃透土星双SH‑2+VDP1/VDP2整套硬件,做大量硬件调度、数据预处理、画面取舍,才在土星实现稳定60帧(NTSC 60fps,隔行高分辨率704×448)。
土星版VF2是工程妥协+最大化压榨硬件能力,人物动作、判定逻辑完整保留,但多边形、光照、背景做了大幅改造。
一、是第一款活用双CPU的游戏
为了移植VF2,AM2从底层逻辑开始重构,根据土星的性能,重新编程,重新写工具,最终几乎把两颗CPU完全跑满:
主SH‑2:负责游戏逻辑、格斗判定、输入读取、动画时序、角色骨骼关键帧运算。
从SH‑2:专门承担3D几何变换、矩阵运算、顶点计算,VDP1原生图元四边形送来的数据。
SCU单元DMA高速搬运顶点、绘图命令,直接送入VDP1命令RAM,避免CPU‑VDP1之间总线等待,减少帧内卡顿浪费周期。
角色动画全部预计算压缩:VF2动作极多,开发定制高压缩动画格式,减少CD读取、内存占用,每帧不需要实时解算复杂骨骼,只做插值,节约CPU时间片。
土星没有硬件几何加速器,顶点变换全部靠两颗SH‑2软件硬算。
二、VDP1渲染:四边形精灵构建人物模型
VDP1原生图元是四边形(扭曲精灵),不是三角形,AM2直接用四边形拼装角色,不做三角转四边形的额外转换开销。
土星版VF2,四边形贴图替代三角形,没有任何特效
背景、地面为大四边形贴图
模型减面:街机Model2角色多边形数量更高,每个角色达到5000多边形每帧,而且带有硬件光源高洛德着色和透明效果,土星版角色模型多边形做删减;利用VDP1四边形构筑角色,运用贴图优势,一个四边形可以承载16色纹理,街机Model2单多边形只能单色,以贴图弥补多边形数量下降带来的细节损失,视觉差距被缩小,土星版多边形换为三角形对应每个角色约1200个左右,特效全部删除。
街机版VF2,人物关节顺滑,多边形高
土星版完全关掉每帧动态光照计算,全部使用平面着色。动态光照会大量消耗SH‑2算力,为守住60帧直接舍弃,角色明暗固定,不随场景光源变化,格斗场景只有两个人物,物体数量少,排序开销可控。
VDP1双帧缓冲,页面翻转,保证60fps垂直同步,渲染一帧的同时显示上一帧画面,无撕裂。
三、背景:彻底放弃3D场景和背景,交给VDP2,以图层显示,大幅降低负担。
街机原版是完整3D多边形擂台,土星版擂台用VDP2多层2D背景图层实现伪3D擂台效果。
擂台、地面、围栏全部预渲染成静态贴图,放在VDP2的背景层,利用VDP2的缩放、旋转、视差滚动模拟镜头推拉、旋转。
VDP2负责背景,VDP1只管两个格斗人物;3D人物和2D背景硬件合成,VDP1输出人物帧缓冲叠加到VDP2背景图层上。
这是维持60帧的关键:把沉重的场景3D多边形直接砍掉,VDP1只需要渲染两个角色,算力全部集中在人物身上,砍掉街机版所有能跟人物、背景交互的3D物件。
四、分辨率与显示模式取舍
启用土星隔行高分辨率704×448模式,画面清晰度很高,但也有代价:
高分辨率模式下VDP1每个精灵可用调色板降低,每多边形最多256色;开发团队严格管理纹理调色板,尽量减少色彩损失。
隔行扫描,快速运动会有轻微的行间闪烁,这是硬件模式带来的副作用。
五、音频与内存调度
音效、格斗打击音效全部预加载内存,流式CD只播放BGM,避免战斗过程CD读取打断帧时间。
内存精细划分:工作RAM放模型、动画;VDP1‑VRAM放角色纹理、绘图指令;VDP2‑VRAM存放擂台背景贴图,DMA快速交换,避免内存不足。
VF2是AM2吃透土星硬件的代表作,但这套方案高度针对双人格斗场景;如果是多物体、复杂3D场景,这套方案就很难维持60帧,这也是土星大部分3D游戏达不到这个水准的原因。
PS能完全移植VF2吗?
结论:能,但达不到完美移植。
以AM2的技术力,移植PS版一点也不难,但街机毕竟内存、显存都比较高,PS在移植中,角色多边形也会减少,细节会丢失,尤其是面部细节,但不像土星那么大,单光照的计算可以完整保留,全多边形地板得以保留,为减少扭曲,会使用大量多边形地板拼合,背景也会替换为2D,以便保留场景内或部分背景3D物件的交互,毕竟PS架构就是以三角多边形为计算基础。
热门跟贴