Page 1 of 1

WIP: Lashker:. A test of Apaches+OpenSteer+GangstaWrapper

Posted: Fri Aug 19, 2005 5:32 pm
by ahmedali
Im doing some tests for my upcomming Yake project: Lashker.
I made a helicopter physics model and used GangstraWrapper. Then made a generic Controller to input it. Then I decided to use OpenSteer to feed the controller for input. And the result was this.

a screen shot of padestrain ai following path and avoiding hidden obstacles and each other. Sorry there are no visuals for path and obstacles and annonation of vehicles behaviour.
Image

and another screen shot.

Image

Posted: Sat Aug 20, 2005 12:11 am
by SpannerMan
Cool. What sort of framerate are you getting with all those choppers and OpenSteer etc?

Posted: Sat Aug 20, 2005 3:00 am
by Olex
How much does OpenSteer allow you to do?
What sort of behaviors? Can the obstacles be dynamic?

Thanks.

Posted: Sat Aug 20, 2005 4:30 am
by Vectrex
cool. Opensteer would be an IDEAL plugin for yake/yapp :wink: :twisted:
In fact how hard was it to get opensteer to work? Much hacking involved? I've read that they are currently trying to seperate the algorithms as much as possible from the gfx demos. Did you use CVS? ...as you can tell from the questions I'm looking at using it myself :)

Posted: Sat Aug 20, 2005 10:31 pm
by ahmedali
Its good to see many people have interest in steering behaviours.
Framerate is limited by graphics mainly, there is no big impact by open steer.
How much does OpenSteer allow you to do?
What sort of behaviors? Can the obstacles be dynamic?

Thanks.
You can do almost anything steering related in OS, if you know how to achieve the desired behavior. The obstacles are static but one can implement dynamic ones or use vehicles as obstacles.
Opensteer would be an IDEAL plugin for yake/yapp In fact how hard was it to get opensteer to work? Much hacking involved? I've read that they are currently trying to separate the algorithms as much as possible from the gfx demos. Did you use CVS? ...as you can tell from the questions I'm looking at using it myself
I'm willing to continue work on project but I'm waiting for yake's updates.
I downloaded the 0.8.2 version zip file and ripped out all opengl stuff, but I found annotations/visual debugging extremely important. It isnt hard at all to integrate with a physics engine but you need to know how it works.

Some more screens.

Here Im flying the Apache and other apaches are avoiding me.
Image

The big spheres are the obstacles and cylinders are the Path nodes.
Image

Here 400 Apaches are going throught their destinations.
Image

Posted: Mon Aug 22, 2005 5:52 pm
by Vectrex
any chance of a binary? :) I'd love to see this working as I've stared at the OpenSteer demo for ages. I'm assuming most of the OS functions are 2d only (except flocking)

Posted: Mon Aug 22, 2005 6:18 pm
by SpannerMan
Vectrex wrote:I'm assuming most of the OS functions are 2d only (except flocking)
I think OpenSteer mostly works in 3D, but when it chooses to ignore the "height value" (like in most of the OpenSteer demos apart from flocking) then it simply uses a setYtoZero() function.

Posted: Mon Aug 22, 2005 6:22 pm
by jacmoe
They are 3D - I briefly looked at similar answers on the OpenSteer "forum".

@ahmedali:
Very cool that you are bringing Ogre and OpenSteer together - I thought of doing an OgreSteer after OgreOpcode, but you beat me to it! :)

Posted: Mon Aug 22, 2005 10:25 pm
by jacmoe
@ahmedali:
Will you be willing to share your Ogre<->OpenSteer code ?
As a basis for an independent Ogre OpenSteer wrapper library? :)

Posted: Mon Aug 22, 2005 11:35 pm
by Olex
jacmoe wrote:@ahmedali:
Will you be willing to share your Ogre<->OpenSteer code ?
As a basis for an independent Ogre OpenSteer wrapper library? :)
I want that! :D

Posted: Tue Aug 23, 2005 12:40 am
by Chris Jones
that would be VERY cool 8)

Posted: Tue Aug 23, 2005 12:19 pm
by ahmedali
jacmoe wrote:Very cool that you are bringing Ogre and OpenSteer together - I thought of doing an OgreSteer after OgreOpcode, but you beat me to it!
It will be also interesting to use OgreOpcode to provide Obstacles of different shapes for Opensteer.
jacmoe wrote:@ahmedali:
Will you be willing to share your Ogre<->OpenSteer code ?
As a basis for an independent Ogre OpenSteer wrapper library? :)
Ofcourse I like to share it as its part of my open source project. First of all, I am not working on a wrapper or framework for steering behaviours for now. Just testing.

Currently Im refactoring the code and tommorow or after tommorow I will upload to sourceforge to project's site.
Vectrex wrote: any chance of a binary? Smile I'd love to see this working as I've stared at the OpenSteer demo for ages. I'm assuming most of the OS functions are 2d only (except flocking)
I will try to load binary too. Every behaviour I have looked at is in 3d including obstacles and path following. Its up to the nature+physics+personality+ai of vehicle a how it gives response to a steering vector.

Another screen with lots of Apaches flocking toghter at very high speed, avoiding collision with terrain and pursuing my Apache.
Image

Posted: Tue Nov 22, 2005 4:50 pm
by Vectrex
howdy, do you have any opensteer ogre code bits you would like to share? I'm looking into it now so any bits you have would be nice instead of hacking it as it is :)
If not any suggestions about how to go about it? Is it just a openSteer->ogre vec3 conversions?

sry

Posted: Fri Jun 15, 2007 8:00 pm
by capture
Sorry to bring this post back from i guess the dead but i have the same question as vectrex.

Posted: Sat Jun 16, 2007 10:50 pm
by ahmedali
The only code is the one uploaded at site.

I just used OpenSteer as is without any modification except removed the Opengl and drawing stuff. Because besides vector conversion there was no point of creating a wrapper for opensteer.

Posted: Sat Jun 16, 2007 11:31 pm
by jacmoe
There is a steering experiment in the OgreSteer 'experiments' SVN folder, and I plan to put two or three experiments in there in a weeks time.
From that, we could probably work out the overall architecture of the increasingly inaccurately named OgreSteer. :)