java - 两全其美 : browser and desktop game?

标签 java c++ browser-plugin

在考虑游戏平台时,我决定使用多平台 (Win/Lin/Mac),但无法确定是浏览器还是桌面。由于我的开发还不算太远,现在正在重新考虑,我想听听您的意见!


使用 Java 小程序的基于浏览器的游戏:

  • 市场渗透率相当高(对于第 6 版,我相信大约是 60%?)
  • 使用 JOGL3D 性能/质量不错;当然足以渲染我制作的蹩脚 3D 图形
  • 有(小?)将某些东西移植到 Android
  • 的可能性
  • 非常适合经常更换电脑的游戏玩家;可以坐在任何电脑前,加载网页并播放
  • 也非常适合喜欢在浏览器中玩游戏但不想在计算机上安装更多东西的休闲游戏玩家或知识较少的游戏玩家
  • 用我比 C++ 更熟悉的高级语言编写 - 但与此同时,我想提高我的 C++ 技能,因为它可能是我的目标离开学校后的游戏行业...
  • 更简单的更新过程:重新加载页面。

使用优秀的 C++ 和 OpenGL 的桌面游戏

  • 100% 的市场渗透,假设完全跨平台;但是,与仅浏览网页并点击"is"以收到安全警告相比,考虑到有多少人将下载和安装可执行文件,这个数字会减少。
  • 更多维护跨平台的麻烦;但同样,出于学习目的,我会接受挑战和我将获得的知识
  • 全面改善性能
  • 真正的全屏,而浏览器游戏通常难以实现流畅的全屏图形(根据我的经验,尤其是在 Linux 上)
  • 可以利用 Steam 等分发平台
  • 更有可能被视为“真实”游戏,而浏览器和 Java 游戏通常被认为不是真实游戏,因此不会被“铁杆玩家”玩
  • 安装程序可以很大;不必太担心下载时间

有什么办法可以两全其美吗?我喜欢 Java 小程序,但我也非常喜欢编写桌面游戏的原因。我不想不断地在 Java applet 项目和 C++ 项目之间移植所有东西;那将是工作量的两倍!

Unity 选择了编写自己的网络播放器插件。我不喜欢这样,因为我是不会为任何东西安装网络播放器的人之一,而且我认为自己无法说服我的观众安装浏览器插件。

我有哪些选择?除了 Unity 之外,还有其他具有浏览器和桌面版本的游戏示例吗?我是否遗漏了上面的赞成/反对列表中的任何内容?

最佳答案

我建议先写一个游戏。

很容易陷入如何制作有史以来最好的游戏,它可以在从算盘到 SkyNet 的任何东西上运行,但现实是你将面临大量的挑战在您刚刚完成一款在您自己的 PC 上运行的游戏之前。

首先为一个 平台(无论该平台是“带有 DirectX 的 Windows 原生”,还是“Java applet”,甚至是“浏览器中的纯 AJAX”)编写游戏。如果你能做到这一点,那么你就可以开始考虑如何将它移植到其他平台了。但是尝试做所有事情肯定会一事无成。

或者换句话说:

I've decided on multi-platform (Win/Lin/Mac)

所以您实际上什么都没有。确定要开发的平台。然后制作游戏。然后让它在其他平台上工作。

不要太担心您的“观众”会接受什么。如果您的游戏很有趣,那么是的,人们会很乐意安装 Unity。就像如果不是基于浏览器的游戏,他们会安装您的游戏一样。但重要的一点不是“我必须安装什么才能玩”,而是“值得吗”。您的重点应该是制作一款值得安装的游戏。

除非您计划售出 2000 万份游戏并以此为生,否则您的“观众”并不那么重要,不是吗?重要的是将游戏放在那里,以便有兴趣的人可以尝试。

但单一平台游戏比未完成的跨平台nothing要好得多。

一款需要我安装 Unity 的游戏比你坚持重新发明轮子再花 3 年开发的游戏要好得多。

关于java - 两全其美 : browser and desktop game?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3045522/

相关文章:

java - 从 rsa 文件创建 keystore

java - 如何为 JAXB2 Maven 插件指定 javax.xml.accessExternalSchema

Java 泛型 : how to declare a generic parameter as the base type of another generic parameter?

c++ - 访问冲突读取位置0xfeeeefef2 多线程编程c++ windows

c++ - 在 Quartz 插件中找到左上角

java - 如何修复 if 语句中的 if 语句?

c++ - 是 “catch all” block ,它会动态分配分配的内存,然后重新抛出有效/良好的设计选择?

c++ - 数组中的最小差异

javascript - 在浏览器插件中使用带有自定义事件的 YUI 3 Event

c - Javascript 调用的 NPAPI 函数