【问题标题】:Flash 2D engine to use to make a Flash Angry Birds clone (to run on mobile)用于制作 Flash Angry Birds 克隆的 Flash 2D 引擎(在移动设备上运行)
【发布时间】:2011-03-17 09:14:56
【问题描述】:

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

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

【问题讨论】:

  • 据我所知,打包的 Flash 应用程序的性能太差,无法制作物理游戏。我希望我错了。

标签: flash mobile box2d alchemy physics-engine


【解决方案1】:

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

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

World Construction Kit 使它更容易上手。 Lee Brimelow 有一个不错的开始tutorial

我建议您了解一些基本的 Box2D 概念,例如:

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

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

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

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

对于 Android,您可以查看此 LFPUG presentation 并获取一些提示/建议/陷阱。

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

HTH

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      【解决方案3】:

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-08-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-10-27
        相关资源
        最近更新 更多