作者sonyxeperiau (son)
看板PSP-PSV
标题[情报] 国外神人成功在 PSP 运行《绝对武力》
时间Wed Sep 23 08:36:06 2026
22 岁老掌机的奇蹟!国外神人成功在 PSP 运行《绝对武力》,还跑出顺畅的 60 FPS
来源:电脑王阿达
22 年前的 PSP 掌机,大多数人应该都是将它收藏起来,没有在玩,而国外有神人 Yifen
g Wang 近日却打破了硬体极限,成功将 PC 经典射击神作《绝对武力》(Counter-Strik
e)完美移植到这台老主机上。他将此专案命名为《OpenStrike》,把效能压榨到极致,
游戏仅占用不可思议的 12MB 记忆体,还能在 PSP 上运行出顺畅的 60 FPS。
根据外媒 PCGamer 报导,开发者 Yifeng Wang 做 《OpenStrike》专案 虽然只是为了概
念验证,但也付出非常大的心血。建立他自己基於 Rust 语言开发的 3D 引擎「Pocket3D
」,加上一个名为「PocketJS」的 JavaScript 引擎。
Pocket3D 引擎用於负责玩家移动、碰撞侦测、AI 机器人、武器、子弹与场景绘制等不能
掉帧的工作。游戏规则、武器参数和画面上的血量、弹药、准星、比分等介面,则交给 P
ocketJS 架构处理,并透过内嵌的 QuickJS 执行 JavaScript 与 TypeScript。
简单来说,底层最吃效能的部分由 Rust 负责,上层的游戏规则和介面则保留 JavaScrip
t 容易修改的特色。只要更动 `rules.ts`,开发者就能调整回合流程、机器人数量或武
器设定,不必重新改写整套 3D 引擎。
Yes, that's Counter Strike on a PSP! Yes, that's DevTools inspecting game UI!
Yes, it's PocketJS!
Clean room implemented FPS engine, fully open JavaScript mod API, ~12MB RAM fo
otprint, 60fps, fully open source. pic.twitter.com/OprLN3E71J
— PocketJS (@pocket_js) July 10, 2026
这套架构厉害的地方是,整个 OpenStrike 专案在 PSP 上的记忆体占用约 12 MB。
初代 PSP 虽然配备 32 MB 记忆体,但实际留给使用者程式的空间大约只有 24 MB。根据
Yifeng Wang 公开的记忆体分析,包含 Rust 引擎、QuickJS、JavaScript 程式与整张
处理完成的地图,执行档约占 6.2 MB;QuickJS Heap、引擎状态和每帧顶点暂存区的使
用高峰约 4.4 MB,意味着,最後还是有留下约 13 MB 空间。
OpenStrike 现阶段是 v0.1 概念验证版本,距离完整重现 CS 1.6 还有一段距离,不过
完成度已经很高。
目前版本测试过 8 张经典《绝对武力》地图,包括 de_dust、de_dust2、de_inferno 与
cs_office。玩家可在地图中跟 AI 机器人进行歼灭战,消灭所有机器人就算获胜。如果
玩家先死亡则判定失败,游戏会自动开始下一回合并保留比分:
OpenStrike 能在 PSP 上维持 60 FPS 的速度运行,其关键是尽可能不让 PSP 执行多余
的工作。
值得一提的是,原版《绝对武力》使用的是 GoldSrc 时代的 BSP 地图格式,而 BSP 全
名是二元空间分割,它会先把整张地图切分成许多区域,而地图档案中还包含 PVS,也就
是「可能看得见的区域」资料。
举例来说,在 Dust2 的户外,引擎透过查表就能瞬间判断画面的可视范围。那些藏在墙
後、看不到的房间和通道,引擎会直接忽略、不做任何检测,自然也不会浪费 GPU 效能
去绘制。
这种技术很适合 PSP。现代显示卡有足够效能处理更复杂的遮蔽剔除演算法,但 PSP 最
缺的就是运算资源。与其每一帧都重新判定可视范围,直接沿用 1990 年代就写好的运算
结果更好。
光影处理也是类似想法。GoldSrc 地图原本附有 Lightmap,用来记录墙面、地板和物件
的阴影与明暗变化。OpenStrike 没有让 PSP 在启动游戏或执行期间重新计算光影,而是
在电脑编译游戏时,就先把 Lightmap 的结果烘焙进模型的顶点颜色。
PSP 只要按照这些颜色把三角形画出来,硬体便会完成颜色渐层,不需要再多叠一层即时
光影。
当然,这也有代价,游戏画面就不会有现代游戏的动态光源与华丽阴影,但对 4.3 寸、4
80 × 272 解析度的 PSP 萤幕来说,这个取舍很合理。
OpenStrike 已经在 GitHub 以 MIT 授权开源,除了桌面版本,也能打包成 PSP 的 EBOO
T 执行档。没有实机的玩家,可以使用 PPSSPP 模拟器执行。如果要在真正的 PSP 上安
装,则需要一台能执行自制程式的主机,将打包完成的资料夹放进 Memory Stick 後,Op
enStrike 就会出现在游戏选单中。
要注意的是,此专案没有提供 Valve 拥有版权的地图和材质档案,玩家必须自行从合法
持有的《绝对武力》游戏副本准备 `.bsp` 地图与 `.wad` 材质。GitHub README 表示,
理论上任何 GoldSrc 时代的 BSP v30 地图都能使用。
-----
Sent from
PttX on my iPhone
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 27.240.97.128 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/PSP-PSV/M.1790123768.A.973.html
1F:推 mron: 推,但,这没光枪、滑鼠应该很难玩。 09/23 11:02
2F:推 rei196: PSP不死 09/24 06:00
3F:推 woajw: 时代的眼泪 10/18 22:19