制作类似熔岩灯的动画

3
我最近看到了一些东西,让我想知道如何创建一个逼真的(2D)类似lava lamp的动画,用于屏幕保护程序或游戏。当然,可以使用偏微分方程来模拟熔岩灯的物理特性,并将其转化为代码。然而,这可能会非常困难(因为有多个因素,其中包括“蜡块”的几何形状的固有不规则性和高数量的变量),并且在实时计算中计算成本可能过高。如果找到解析解,它们同样无用,因为您需要在动画中具有某种程度的随机性(或随机性)。所以,问题是,有没有人能想出一种方法,在不详细模拟物理学的情况下,允许您实时地(以每秒10-30帧的速度)在典型的台式机/笔记本电脑上制作一个逼真的熔岩灯动画?换句话说,有没有一种“欺骗”的方法?
2个回答

7

作弊的一种方法可能是使用具有精心选择的转换表的概率性元胞自动机来模拟斑点的运动。一些流行的屏幕保护程序(特别是ParticleFire)采用这种方法来优雅地模拟二维空间中的复杂运动,通过将对象分解为单个像素,然后定义单个像素如何过渡,通过查看它们邻居的状态。简单的元胞自动机可以得到一些相当紧急的行为-例如,看看康威生命游戏,或者这个森林火灾模拟


4

LavaLite是开源的。你可以在大多数Linux发行版中使用xscreensaver-gl包获得代码。它使用metaballs


这在原则上似乎是个好主意,但仍然存在计算问题。比全面模型便宜得多。我真的应该自己找到这个,我需要提高我的谷歌功夫!对于关于代谢球的有趣阅读给一个赞。 - Chinmay Kanchi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接