1

在我的应用程序中,我正在实现一个涉及粒子的绘图功能......基本上它需要像 Art of Glow 一样工作(这个应用程序在这里:http ://www.youtube.com/watch?v=ZIZpw1VslIk )。

我要做的是:创建粒子系统和发射器(Point 类型);在每个触摸事件中,我将发射器移动到按下的位置,这样粒子看起来就像是在跟随手指...

如果我画得很慢,效果很好,但如果我画得更快,比如画一条直线,这条线就会被框住。

然后我尝试做一个 recusive 函数,基本上从前一个点到下一个点将发射器的位置设置在它们之间的中间点,并对从前一个点到中间部分和从中间部分的中间部分执行相同的操作下一部分(我不知道你是否明白我做了什么......不知道如何用英语解释),但这条线仍然会被框架化。

所以我认为应用程序,当你快速移动时,“没有时间”在每个点移动发射器,这就是为什么一条直线会被框架化......所以,你对如何制作它有任何想法吗?和 Art of Glow 一样高效?该应用程序仅丢失很少的输入,我不明白作者是如何做到的...

4

2 回答 2

1

当您获得触摸输入时,您是否仅使用当前位置?看起来您尝试制作一个 tweener(用于生成中间帧的东西),但 Android 可以为您提供更多输入以实现快速移动。查看文档,尤其是“批处理”部分。

基本上,您可以使用geHistoricalX/YgetHistoricalEventTime来填写您的缺失点。如果这不能让它变得完美,那么结合你当前的方法来做应该让你尽可能接近。

于 2012-10-08T11:40:14.663 回答
0

https://stackoverflow.com/a/21724810/472336

检查这个......这适用于大多数仍需要改进的场景

于 2014-02-12T12:03:01.920 回答