1

我希望开始学习 ActionScript 和 Flash 来编写一个可能非常复杂的游戏引擎。我来自相对先进的软件架构背景,因此想知道一些事情(我认为对我的引擎很重要)是否可以使用 Flash:

  1. 首先,我想将我的游戏模块化,以便它既可以用作其他 Flash 项目中的组件,又可以使用自定义编写的组件进行扩展以扩展引擎本身。
  2. 我希望能够通过网络动态加载这些模块,这样用户就不需要一次下载整个(可能很大的)游戏,而只需在给定时间下载那些需要的部分。
  3. 我可能需要在用户计算机上存储较大的保存游戏文件和中间文件,这些文件可能超出 Flash 应用程序的默认允许限制。
  4. 我可能需要访问某种数据库来存储和检索游戏数据。Flash 是否支持任何类型的本地数据访问?

引擎本身将相当复杂和抽象,可能涉及大量类和不同类型的属性和功能。ActionScript 能胜任这项任务吗?

4

2 回答 2

1

1 是

2 是

3,4 不,可能想要查看adobe air或考虑其他闪存功能,例如可以处理所有用户信息而不是将它们存储在用户计算机上的协作服务器 (blazeds, red5)

于 2009-12-26T21:44:54.473 回答
1

只是一些信息,Eran的答案非常完整。

1 & 2 = 您可以使用 Flex 模块,它非常方便且运行良好。您可以在 Internet 上找到一些教程。它处理得很好,我们用它来动态加载/清理游戏引擎的部分。更多信息在这里

3 = 您可以用来保存客户端机器上的任何内容,将其放置在沙箱中,可与 flex 或 air 一起使用。

4 = 最好使用 RPC、REST 或 WebServices 将内容存储在服务器上。

对于性能问题,这将取决于您将使用什么动作脚本。我只能推荐使用 ActionScript 3,因为它可以静态编译并且相当强大。此外,如果你想要一些真正高性能的东西(例如物理引擎部分或类似功能),你想尽量避免在 actionscript 中使用动态类。

希望有帮助:)

于 2009-12-28T03:16:27.847 回答