0

作为 Flash 的普通用户,您知道您可以将图像导出到移动剪辑,逐帧执行,但这不是非常“优化”的方式,在 C++ 中,我现在无法与之交谈的朋友已经阅读了spritesheet 并通过它进行动作和一切,并且由于 AS2 基本上是 C++,因此类似的代码会发生这种情况,但我没有设法找到它。

我想要的是从像这样的精灵表中导入相同大小的图像:http: //j.imagehost.org/0829/WoodyGX_0.jpg

它们都是相同大小的图像放在一起形成精灵表,所以有这个“算法”可以读取每个图像并将其标记为动作使用,但因为我不知道我在问能告诉我的人可能的算法或将这张纸、每张图像的图像读入我的电影剪辑的方法。

现在谢谢。

4

2 回答 2

2

我忍不住想引用你的话:

AS2 基本上是 C++

只是因为我喜欢。

反正。是的,你可以做到,但 AS2 的工具集相当有限,所以会很困难。首先,您需要使用BitmapData.draw()方法创建一个包含您加载的 spritesheet 的所有像素的 bitmapdata 对象。

接下来,您可以选择做BitmapData.copyPixels()BimtapData.draw()(同样,您可以从另一个位图数据中绘制,只使用它的一部分 - 您需要查看要传递矩形和矩阵的参数,告诉它哪一部分完全复制。

最后,要绘制它,您将使用MovieClip.beginBitmapFill(bitmapdata), 并绘制边界以填充您已有的位图数据。

于 2012-06-01T17:11:46.643 回答
0

要扩展他的不可发音的答案,您需要使用MovieClipLoader加载您的精神表。然后,您需要创建一个 BitmapData 并从您加载到的 MovieClip 中绘制像素。然后,您可以直接使用它作为源来绘制或将像素复制到作为您的角色的 BitmapData,每次都计算您想要的姿势,或者您可以创建许多不同的 BitmapData 实例并为每个实例绘制一个姿势。然后你迭代,每次都将一个较小位图的所有像素绘制到你的角色上。

于 2012-06-02T16:19:34.787 回答