草庐IT

java - 适用于Java中Flocking Boids的二维空间数据结构

我正在做一个植绒类群的模拟只是为了好玩,我想稍微优化一下。需要工作的区域是在给定的boid附近找到boids。我认为,执行某种适合该任务的空间数据结构将是我最好的选择(请参阅here并向下滚动一点。)。无论我选择什么,我都会从头开始用Java实现自己。与仅调用一堆库函数相比,这样我将更多地了解我选择的数据结构。我知道R-Trees,k-dtrees,和Quadtrees.在我看来,它们都是可行的选择。但是我对这些数据结构没有任何经验,我也不确定什么最适合我的目的。我不需要thisscale上的任何东西-我说的可能是几百个boid,也许最多一千个,而不是一百万个,但请记住,我最终可能最终

java - 植绒小鸟行为问题

昨天我遇到了CraigReynolds的Boids,随后我想我会尝试用Java实现一个简单的2D版本。我根据ConradParker'snotes整理了一个相当基本的设置.但是,我遇到了一些相当奇怪的(在我看来)行为。目前,我的boids相当快地移动到一个粗糙的网格或格子中,并继续当场抽搐。我的意思是它们会四处移动并非常频繁地旋转。目前,我已经实现了:对齐凝聚力分离限速最初,我的类群随机分布在屏幕区域(与帕克的方法略有不同),并且它们的速度都指向屏幕区域的中心(请注意,随机初始化的速度给出相同的结果)。更改速度限制值只会改变boids移动到此模式的速度,而不是模式的形成。在我看来,这可