我想开发一款图形和功能丰富的在线浏览器游戏。我对这些技术很陌生,所以请原谅我提出任何模糊的问题:
- 我应该如何以及从哪里开始?
- 我的前端编程选择和工作流程应该是什么?
- 我的后端编程选择和工作流程应该是什么?
- 我需要浏览器游戏的游戏引擎吗?
最佳答案
我应该如何以及从哪里开始?
我假设您已经了解了游戏的外观。进行一些思维实验,看看你的愿景会走向何方。保持积极的心态,不要让任何疑虑潜入你的脑海。尝试一些原型(prototype)设计,对其进行评估并相应地调整您的计划。
如果您对要使用的技术没有经验,那么几乎可以肯定您会遇到一些障碍,这些技术不允许您完全实现您想要的目标。每个人都会遇到这种情况。汲取经验并继续前进。
我的前端编程选择和工作流程应该是什么?
HTML5 解决方案将是最容易访问的,但它可以说是最难实现的。您必须非常了解 Javascript。
Flash解决方案可以轻松实现非常酷的图形效果,但是有些人担心Flash的资源消耗。
Silverlight 是面向 Microsoft 开发人员的 Flash。对于用户来说,它是最难访问的。
我的后端编程选择和工作流程应该是什么?
一些流行的Web框架:Ruby on Rails ( ruby ),Zend Framework (PHP),ASP.NET MVC (.NET),Django (Python)
我建议您始终以自上而下的方式实现功能:从 UI(用户希望看到/能够实现的内容)开始,到“业务逻辑”,再到数据库。
随着 NOSQL 数据库的兴起,它们可能是替代传统关系数据库的合适选择。选择数据库时,请评估您的应用程序的读/写比率。通常的方法适用于读取频率高于写入频率的应用程序。我怀疑游戏可能并非如此,因此您在关注游戏时应该小心。
我需要浏览器游戏的游戏引擎吗?
我想您正在谈论成熟的游戏开发框架,您只需填写占位符?我不会选择这样的事情,甚至不知道如何选择。它会太多地限制我的选择。不过,我当然会使用一些库(例如 3D 图形引擎)来卸载非必要的功能,并专注于让我的游戏变得独一无二。
但是还有一个东西你可以称之为游戏引擎——它是游戏的核心逻辑。我建议您注意并显式地建模这个核心行为(最有可能的是,以 OOP 风格)。将所有内容集中在一处(而不是分散在整个代码库中)。与普通应用程序相比,游戏往往具有相当复杂的逻辑,如果您没有正确建模,您以后可能会很难理解它。
关于architecture - 在线浏览器游戏架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6641364/