【发布时间】:2014-10-09 17:50:08
【问题描述】:
我正在动画粒子以随机速度从屏幕顶部移动到底部。它们也随机放置在屏幕顶部。
是否有一种数据结构可以用来确定粒子在一定半径内相对于彼此的接近程度,而无需检查每个粒子。我试过四处搜索,但不确定要搜索什么。
【问题讨论】:
-
有一种方法可以将它们放入区域中,不过我忘记了名称。本质上,它是由具有适当步长的网格以图形方式表示的。同一区域中的所有粒子都在一个数组(或其他)中,因此您实际上只需要检查该区域和相邻区域。我知道 NVidia 在简化 n 体星系碰撞模拟时使用了类似的技术。
-
你应该研究碰撞检测。
-
单个粒子路径有多复杂?
-
这是为了模拟吗?如果是这样,单个粒子路径有多复杂?更快的路线可能是寻找沿着道路的一些步骤而不是当前模拟步骤的接近度。它至少可以帮助确定哪些粒子可能会在接下来的几步中接近。
-
是的,你是对的。我尝试确定路径的每一步的接近度,但从性能的角度来看这是不可行的。我只是在路径上设置了位置来确定接近度。
标签: math data-structures computer-science simulation