0

Flash 有几种不同的物理引擎可用。你会推荐什么来构建一个弹射器(带弹弓)愤怒的小鸟克隆——一旦通过 Air 打包,它将在移动设备上运行良好?

有没有人使用过 Box2D 与 Box2d For Flash 的 World Builder Alchemy 端口?

4

3 回答 3

2

前段时间(在愤怒的小鸟之前)开发了一个令人讨厌的弹弓游戏,名为StuntmanJoe并且没有使用 Box2D,只是基本的矢量数学。

此外,几年前,还制作了一款名为BlockStock的基本 Box2D 游戏。使用纯 as3 端口(不是 Alchemy 端口),对于简单的游戏,它运行良好。

不过,世界构建工具包让上手变得容易得多。Lee Brimelow 有一个不错的入门教程

我推荐的是理解一些基本的 Box2D 概念,例如:

  • 坐标系(不同于flash)
  • Box2D 实体定义 (b2BodyDef) 和多边形定义 (b2PolygonDef)
  • 力、冲量、关节

使用世界构建工具包,您仍然可以在不了解这些内容的情况下制作演示,但了解 Box2D 的运行方式将非常有用。

Alchemy 端口应该稍微快一些(大约每秒 5/10 帧,具体取决于上下文),但恐怕我还没有在移动设备上尝试过。

在伦敦 Flash Camp 上,我看到了一个非常基本的愤怒的小鸟,比如在 Android 手机上运行的 flash 演示,帧速率超过 20fps,这令人鼓舞。我想你应该记住在手机上运行良好的内容类型和一些可以稍微提高帧率的技巧(如可能的 cacheAsBitmap 和 cacheAsMatrix)。

对于 Android,您可以查看此LFPUG 演示文稿并获得一些提示/建议/陷阱。

对于 iPhone,我不会考虑将 Flash 用于响应式 Box2D 游戏。我宁愿推荐Cocos2D for iPhone而不是 Flash。

高温高压

于 2011-03-17T12:15:36.833 回答
0

愤怒的小鸟实际上使用 Box2D 作为它的物理引擎。有许多不同的版本可用 - 包括用于移动开发的本机版本。对于响应速度最快的时间,您可能正在查看本机。

我自己用过,没有任何问题,但如果你想用 AIR for mobile 打包,你遇到的任何帧率问题都可能与移动设备上的 Flash 本身有关,而不是 Box2D

于 2011-03-17T12:41:37.943 回答
0

只需使用 Box2D 闪存 http://box2dflash.sourceforge.net/

这是原始 Box2D 的一个很好的端口。另外,您可以使用 Quick Box2D 简化一些与 box2d 相关的例程: http ://code.google.com/p/quickb2/

于 2011-06-10T09:03:11.410 回答