我想开发一款图形和功能都很重的在线浏览器游戏。我是这些技术的新手所以请原谅我任何模糊的问题:
答案 0 :(得分:2)
我应该从哪里开始?
我认为你已经了解了游戏的外观。做一些心灵实验,看看你的愿景在哪里。要积极,不要让任何怀疑进入你的脑海。尝试一些原型设计,评估它们并相应地调整您的计划。
如果您没有使用过的技术经验,几乎可以肯定您会遇到一些障碍,这些技术不允许您实现您想要的技术。它发生在每个人身上。从中学习并继续前进。
我的前端编程选择和工作流程应该是什么?
HTML5 解决方案将是最容易访问的,但它可能是最难实现的。你必须非常了解Javascript。
Flash 解决方案可以轻松实现非常酷的图形效果,但有些人担心Flash的资源消耗。
Silverlight 是适用于Microsoft开发人员的Flash。它是用户最不易访问的。
我的后端编程选择和工作流程应该是什么?
一些流行的Web框架:Ruby on Rails(Ruby),Zend Framework(PHP),ASP.NET MVC(.NET),Django(Python)
我建议您始终以自上而下的方式实现功能:从UI(用户希望看到/能够实现的内容)开始,直到“业务逻辑”到DB。
随着NOSQL数据库的兴起,它们可能是合适的,而不是传统的关系数据库。选择数据库时,请评估应用的读/写比率。通常的配方适用于读取比写入更频繁的应用程序。我怀疑游戏可能不是这样,所以你应该小心跟随它们。
浏览器游戏需要游戏引擎吗?
我想你是在谈论成熟的游戏开发框架,你只需要填写占位符?我不会选择这样的东西,甚至不知道选择。这会过多地限制我的选择。但是,我当然会使用像3D Graphics Engine这样的库来卸载不必要的功能,并专注于让我的游戏独一无二的。
但还有一件事你可以称之为游戏引擎 - 它是你游戏的核心逻辑。我建议你注意并明确地模拟这个核心行为(最有可能的是,在OOP风格中)。将它们集中在一个地方(而不是遍布整个代码库)。与普通应用相比,游戏往往具有相当复杂的逻辑,如果你没有正确建模,你最终可能会很难理解它。
答案 1 :(得分:1)
您可以在此处查看简单示例http://riseofkings.net/
解释框架:
框架是几种方法&您使用的类和框架可以帮助您更快地处理代码。
class db
{
function db(){
mysql_connect("localhost", "name", "pass");
mysql_select_db("game");
$result = query("SELECT user,important,data FROM users WHERE ....");
$this->user_data = mysql_fetch_assoc($result);
}
function query($query){
$result = mysql_query($query);
if ($result) { return $result; }
}
}
$db = new db();
你可以像
一样使用它if ($db->user_data['user'] == 1)
{
//do something
}
答案 2 :(得分:1)
<强> 1。我该如何以及从哪里开始?
对于在线游戏,我认为目前最流行的开发平台是Flash。如果你想做最新和最好的,那么尝试使用Canvas API学习HTML5。所以你有两个选择,也许你可以先检查哪一个最适合你?读一些文章或书籍可能吗?
<强> 2。我的前端编程选择和工作流程应该是什么?
对于Flash,显然是ActionScript。如果您想使用HTML5,则必须使用javascript。所有浏览器都支持JavaScript。但是如果使用HTML5则要小心,并非所有浏览器都支持所有API。
第3。我的后端编程选择和工作流程应该是什么?
对于后端编程,如果您想使用自己的服务器进行托管,我建议使用Python。它易于学习,并且仍然具有一些很棒的功能。至于工作流程,我真的不明白这个问题,所以你介意在评论中解释它吗?
<强> 4。我需要一个游戏引擎用于浏览器游戏吗?
我赞同其他人:这取决于你对“游戏引擎”的意思。
答案 3 :(得分:1)
我应该从哪里开始?
首先是计划。你应该决定你的游戏会是什么样子,并坚持计划。 你还必须决定几件事,比如:
我的前端和后端编程选择和工作流程应该是什么?
你总是可以自己决定,但一切都回到了要求.Esp估计用户的数量,是服务器客户端还是只是一个独立的游戏。我的建议是尝试看看成功的案例研究并从那里学习。不要浪费时间做反复试验。一个例子是愤怒的小鸟案例研究: Chrome Case study:Angry Bird link和Angry Bird case study link
浏览器游戏需要游戏引擎吗?
如果你对游戏引擎的定义是根据维基百科Wikipedia link:
“除了可重复使用的软件组件外,游戏引擎还提供了一套可视化开发工具。”,我的回答是:
希望有所帮助。