3

我正在尝试将我的一个旧项目转换为使用 Starling 以获得一些额外的性能。我在加载 SWF 并尝试显示它们时遇到了问题。

这是我之前使用的代码:(没有 Starling)

private function swfLoaded(e:LoaderEvent):void {
    var spr:Sprite = new Sprite();
    spr = e.currentTarget.content;
    bitmapData.draw(spr ...);
}

我使用 Starling 时的问题是 currentTarget.content 是 flash.display.displayObject。

cannot convert com.greensock.loading.display::ContentDisplay@90ffec1 to starling.display.Sprite

我想找到一种将 flash.display.displayObject “转换”为八哥精灵的方法。我还希望能够将加载的 swfs 内容作为精灵存储到数组中。

在此先感谢,汤帕

4

1 回答 1

0

一方面,您在创建 spr 后立即用不同的值覆盖它。

执行 bitmapData.draw() 调用后:

var tex:Texture = Texture.fromBitmapData(bitmapData, false, false);

然后可以使用新纹理创建 Starling Image 精灵。

于 2013-01-03T18:10:17.907 回答