Hacker News 中文摘要

RSS订阅

用JavaScript打造PS2游戏 -- You can make PS2 games in JavaScript

文章摘要

文章介绍了一个开发者发现可以用JavaScript制作PS2游戏的有趣现象。作者在itch.io平台上发布的网页游戏被网友Dev Will移植到了PS2平台,并开源了相关代码。这表明原本被认为开发难度高的PS2平台现在也能通过JavaScript进行游戏开发。

文章总结

标题:用JavaScript开发PS2游戏成为现实

文章链接:https://jslegenddev.substack.com/p/you-can-now-make-ps2-games-in-javascript

核心内容:

  1. 项目发现
  • 作者意外发现自己的网页游戏《Sonic无限跑酷》被用户"Dev Will"移植到PS2平台
  • 该移植项目完全使用JavaScript开发,而非传统的C/C++语言
  • 项目基于名为AthenaEnv的开源环境实现
  1. AthenaEnv技术解析
  • 该环境通过嵌入修改版QuickJS引擎实现JavaScript在PS2上的运行
  • 提供完整的游戏开发API,包括:
    • 图形渲染(精灵、文字、形状等)
    • 资源加载(图片、音效、字体等)
    • 输入处理(支持手柄和键鼠)
    • 文件操作
    • 音频播放
  1. 开发体验
  • 开发流程简单:在代码编辑器修改JS文件后,通过模拟器重置即可测试
  • 作者创建了"Hello World"示例演示:
    • 资源加载与精灵动画
    • 游戏循环实现
    • 文字渲染
    • 输入控制(包含角色朝向处理)
  • 提供了开发模板和资源链接
  1. 项目分发
  • 可通过特定工具将项目打包为.iso文件
  • 详细说明了文件准备和转换流程
  • 解决了非技术用户难以部署多文件项目的问题
  1. 现状与展望
  • 当前版本主要支持2D开发
  • 3D功能将在v4版本中完善
  • 提供了几个3D演示项目链接
  • 推荐加入官方Discord社区获取支持

项目资源: - Sonic移植版:https://github.com/DevWill-hub/Sonic-Infinite-Runner-PS2 - 开发模板:https://github.com/JSLegendDev/Athena-PS2-Template - 主项目:https://github.com/DanielSant0s/AthenaEnv - Discord社区:https://discord.gg/cZUH5U93US

(注:原文中关于具体代码实现细节、图片说明和部分技术讨论过程等内容已进行适当精简,保留了核心的技术原理和开发流程说明)

评论总结

评论总结:

  1. 正面评价:
  • 对项目表示赞赏,认为其创新且实用:
    • "Super cool. Thanks for sharing this. I've been looking for something like this for a while."(太棒了。感谢分享。我一直在找这样的东西。)
    • "Fabrice Bellard builds stuff that just has such a wide spread impact"(Fabrice Bellard开发的东西影响广泛)
  1. 技术兴趣:
  • 关注项目在实体PS2上的运行可能性:
    • "I’m curious if there’s a way to burn the ISO to a disc and get this playing on a physical console?"(好奇能否将ISO刻录到光盘并在实体主机上运行?)
  1. 负面意见:
  • 认为项目是为了规避其他技术:
    • "people will do anything to avoid using .gdscript and Godot"(人们会想尽办法避免使用.gdscript和Godot)
  1. 重复发布:
  • 指出该项目已被多次分享:
    • "Already been posted here twice by the dev in the past two months"(开发者过去两个月已经在这里发布了两次)