-
I would say OpenSteer is certainly *conceivable* for such a project. The 2d nature is not a problem at all. OpenSteer uses 3d geometry but can easily be restricted to a plane. Several of the supplied demos are 2d.
Perhaps a bigger issue is the interaction of Box2D's physics with the steering behaviors of OpenSteer. Most applications of OpenSteer have relied on its very simplistic...
2009-10-15 17:39:28 UTC in OpenSteer
-
> In your code you used getForward() I presume you meant forward().
Right, I guess I changed the name in PSCrowd to make it more clearly an accessor but never made the corresponding change in OpenSteer.
2009-10-09 17:45:20 UTC in OpenSteer
-
Just as well then that I was unable to reply yesterday. I'm glad you were able to solve your own problem and that you used annotation (thats what you meant by "graphic debug", right?) to visualize the problem. I find that *really* useful. Traditional debuggers are of little help. Mathematically inclined or not, if its not working a little real time geometric visualization is worth a...
2009-10-09 17:42:15 UTC in OpenSteer
-
> 1) In the example pedestrian plug-in
> it uses a random function to decide
> whether to apply a steering force. I
> guess this is to allow different
> steering forces to have their chance
> when combining stuff. Am I correct in
> this assumption?
Right, the different plug-ins use a variety of techniques to blend multiple steering behaviors. You can do weighted...
2009-10-06 18:50:08 UTC in OpenSteer
-
Your questions are welcome. I am currently learning an unrelated open source library and have been asking lots of newbie questions on its forum.
Thanks for the recommendation of Recast. There has been a little discussion about whether OpenSteer should include (for example) navmesh code. Should it be more functional (more ready for real world appliocations) or should it be pure and simple?...
2009-10-05 21:54:23 UTC in OpenSteer
-
Hi Chris, welcome. I'm glad to hear you have been able to make use of OpenSteer in your application. The topic of navmeshes have come up before, but only to note that there is no direct support for them in OpenSteer:
[https://sourceforge.net/projects/opensteer/forums/forum/264792/topic/3320657?message=7476377][1]
Mainly what you need is related to "containment" steering behavior.
2009-10-05 14:59:02 UTC in OpenSteer
-
Christian Shiel asked: "how do I swap behaviours in and out of this vehicle?"
The basic steering behaviors are member functions on the SimpleVehicle class via a class called SteerLibraryMixin. A Vehicle class defines an "update" function which typically computes a steering vector (by some combination of calls to steering behaviors, vector arithmetic and C conditionals...
2009-09-11 04:51:35 UTC in OpenSteer
-
If your group "...acts more like a swarm of insects than a swarm of birds..." my first thought is that the "alignment" component is not correctly adjusted. If you take a boids model and remove alignment the result will be something like an insect swarm. If your alignment has a max radius or a strength weighting you may need to increase those.
The parameter space of a...
2009-09-11 04:32:08 UTC in OpenSteer
-
Hi, glad to hear you got this working! However note that while this vector:
forward().rotateAboutGlobalY(-5);
may indeed "steer slightly to the right" it was probably not what you meant. rotateAboutGlobalY passes its angle argument directly to the standard C sin/cos library functions so the units are radians. 360 degrees = 2pi (6.28) radians. So 5 radians is -73 degrees. If...
2009-08-23 23:55:10 UTC in OpenSteer
-
Some more random thoughts: if the "sheep" can be assumed to be in a dense group, another approach is to approximate the group with a circle, and then have the dog run around the outside of the circle. There are algorithms for finding the bounding circle/sphere for a group of points, but computational efficiency and tight bounds are probably not important here. So each frame you could...
2009-08-20 20:39:38 UTC in OpenSteer