我知道这种类型的问题已经被问了很多,但我真的找不到能确定我正在寻找的东西的东西,所以希望这不是一个“未经研究就问”的问题。
背景故事:我正在开发一个最初应该在 OSX/iOS 上运行的应用程序,但拥有 Windows 版本已经是必须的。我试图找出最简单的方法,让我在每个版本之间尽可能少地翻译,最好不用学习太多新东西(我有一点时间限制)。
- 我正在使用 C#,目前在 Mono 中开发
- 我习惯了 iPhone 上使用 MonoTouch 的 Cocoa API
所以,我的选择(正如我现在看到的那样):
- 在 mac 上原生,这意味着必须为其他操作系统制作单独的图形例程 - 使 mac 版本变得容易,我可以推迟其他端口的任何学习曲线,但是我想在移植时需要更多的干预
- 使用某种 XML 标记或 HTML/JavaScript 作为表示层,并带有触发后端事件的链接挂钩(我不知道这在不同平台上的效果如何) - 需要我学习一点 JQuery,但它看起来很简单
- 让它成为一个 XNA 项目并使用 MonoXNA(或类似的)来移植 - 需要我学习足够的 XNA 才能做到这一点,不知道这是否很痛苦
- 使用我不知道的其他多平台 2D 套件
基本上,我需要动画 2D 精灵、鼠标和触摸输入,如果有移动关键帧和旋转,那就太好了。
当然,还有声音,但在所有平台上播放声音文件似乎都很简单,编写特定于平台的文件应该不会太麻烦。