0

长期粉丝。

我希望在我目前的美术文凭中为我的主要创意项目创建一个动态动画引擎。我过去有一些编程经验,但并不专注于我目前正在研究的领域。

我想知道我的想法是否可行,如果可行,我需要什么语言/等来实现它。

我意识到这是一个大问题,所以我会尽量做到具体和描述性

我目前正在考虑使用 Flash 和 Actionscript 3。

目前简单的操作说明如下:

用户会看到一个绘图输入,他们可以只使用黑色进行绘图。一旦他们完成了他们的绘图,他们点击一个提交按钮,并且绘图成为正在进行的动画中的一个帧。

但是,程序会分析提交的每一帧,并将其与动画中当前的所有其他帧进行比较。然后程序将新帧(可能还有所有或任何适当的其他帧)按照像素数据最接近其两侧帧的顺序排序到动画中。

该程序可能会在后台执行此操作,或者在间隔时间或任何真正有效的方式。

随着更多帧的添加,动画帧速率也会随着时间的推移部分加快,从而使动画更长更快(可能达到一定程度)。

也许:

framerate = totalFrames / n

或类似的规定

我目前的想法是:

我意识到最困难的方面是根据像素位置数据对帧进行分析、比较和重新排序。我觉得可以通过某种位图分析来实现。

由于我是提问过程的新手,如果有任何不清楚或不好的做法,请把我拉起来,我会尽快纠正。

非常感谢你。

4

1 回答 1

1

虽然使用 AS3 和 Flash 确实可以进行绘图和动画存储,但将帧放入先前绘制的序列的正确算法几乎是不可能的。最简单的例子:一个时钟,一个箭头指向 12, 1, 2... 等等,现在我们已经创建了一个箭头指向 12 的动画作为一帧,现在即将添加一个带有箭头指向的帧在 1. 程序应该如何对该帧做出反应,把它放在第一位还是第二位?如果艺术家有一点乐趣,会画 12,然后是 6,然后是 2(然后是所有其他的)——程序如何确定它是 12-1-2-3-4...?请注意,即使只有一个箭头,甚至没有数字或线条,也只有一个像素在两个连续帧中常见(或一组像素,即轴)。另一种情况——一条水平线掉下来,共有0个像素。还有一些例子,一个框架可能会被插入到其他两个不应该插入的框架之间,而不管您使用的位图邻近度度量如何。所以我建议你改用手动排序,不要玩这种高科学。

可以执行可变速度的动画显示,但不能使用 a MovieClip,因为您不能动态制作一个,而是使用一系列BitmapData对象、一个Bitmap对象和自定义 enterframe 侦听器。(和/或一系列形状)

于 2013-09-02T06:03:06.680 回答