我正在制作一个3d粒子系统,我想知道如何制造爆炸。我的函数将指定将产生爆炸效果的粒子数量。它看起来就像一个不断增长的球体。我的问题是:如何计算每个粒子的速度Vector3?
发布于 2013-09-20 23:42:36
如果您希望确保没有任何聚集或偏差,您将需要生成点的uniform spherical distribution (如链接所示,这是直观的,但在某种程度上不是微不足道的)。
要创建有问题的动画,请想象一个以原点为中心的radius = 1
球体。然后,如果选择点的均匀球形分布,则可以设定vector = point - origin
。如果你将这个矢量平移到你的爆破点,你会得到一个从爆炸中指向的矢量的均匀分布。
现在,将这些向量乘以time * explosion speed
,就可以得到大部分动画。请记住,视频游戏需要比现实生活更慢的速度。看一些Mybusters的视频,看看超音速冲击波的例子--在电视上看起来很整洁,但在名气中就没有那么有趣了。
发布于 2013-09-20 23:32:49
方向应该是完全随机的,而速度必须手动调整。只要不断地调整它,直到你得到一个看起来不错的结果,没有正确的答案。
https://stackoverflow.com/questions/18920500
复制相似问题