可以确定,你们当中很多人都知道Molehill —— Flash Player的一套可以实现GPU加速的3dAPI。有些人误以为他只是针对3d实现GPU加速,有一个好消息就是你实际上可以在stage3d上而不是在stage(DisplayList)上加速2d图形的渲染。这个是有一点棘手,但绝对是可能的。
Ely太伟大了!我的意思是,他对2d flash游戏真是件大事情。现在你可以轻而易举的渲染60帧成千上万个sprite了,我期待着在游戏中看到使用他。 我有分开Ely的原始M2D框架,并使用Box2D C++ Alchemy 端口添加了一个RenderScene和Physics类。RenderScene是为了使用M2D而被简化了的API,他将满足你在大多数情况下的使用,也方便其他人很轻易的使用他。 他的工作原理是什么? 在3d中有一些东西可以供你使用——几何geometry (在我们项目中的三角形)、纹理textures 和着色shaders。 要真正显示一张图片 —— 你需要通过两个三角形组成一个矩形同时通过正确的UVs加载一个bitmap数据。如图: ![]() 我可以加快 Flash DisplayList中的DisplayObjects吗? 是的,你当然可以。唯一一点是现在只支持静态的DisplayObject对象,但是计划在将来实现MovieClip。目前通过SpriteSheets支持sprite动画——这里有个工具可以轻松的让你把SWF转换成PNG ——Zoë by Grant Skinner。 未来计划
开源项目 该框架可以无限制的应用于公共领域,你可以在免费的应用在你的商业项目中,同时也可以自己修改、升级这个版本。我们期待在社区里看到这个框架的更新以及应用这个框架的项目和对未来版本的一些建议。 The API
实例
提醒:你必须通过支持Molehill API的Flash Player Incubator版本运行,可以从这里获取。也有可能遇到浏览器不支持GPU加速的情况,你可以换一个浏览器试试看。 下载M2D类库 M2DSamples.zip(包含M2D.swc 、 Box2DAlchemy.swc 、RenderScene.as 和Physics.as)。 M2D源代码地址 https://github.com/egreenfield/M2D |