如何将C游戏移植到浏览器

时间:2012-05-25 00:34:47

标签: c browser porting

这是我的目标 - 采用ASCII roguelike Angband并创建一个用户可以在游戏服务器端玩游戏的在线控制台。从我肤浅的角度来看,这似乎应该可行 - 因为有一些REPL控制台可以在线显示多种语言,所以解释语言应该不是问题,对吧? p>

理想情况下,它就像在服务器上运行游戏并将输出显示到客户端浏览器一样简单。这有可能吗?

2 个答案:

答案 0 :(得分:5)

对这类事情来说,最简单,最酷的解决办法可能就是Emscripten。它实际上是一个LLVM - > JavaScript翻译。您可以使用C编译器(使用llvm-gcc或Clang)生成LLVM字节码,因此这是从C到JavaScript的相当短的路径。

当然,您仍然需要一些JavaScript“粘合剂”来​​创建HTML UI。 Emscripten不是相当那神奇。 :)

答案 1 :(得分:1)

作为Angband devteam的成员,我当然有兴趣关注你的进展。您可能想要调查几种不同的方法包括

  • 如果您想减少投入工作并且愿意忍受一些安全问题(或者正确地将其锁定),Shell in a Box是一个AJAX终端模拟器,您可以轻松地使用它来连接浏览器到了一个shell。还有其他人。
  • konijn为他的Angband变种Hellband开始Javascript interface的工作。我不相信它是完整的或稳定的,但它可以作为一个模型。