[ODE] AI steering behaviors using ODE
Raul Chaparro
raul.chaparro at pyrostudios.com
Tue May 16 01:17:10 MST 2006
My problem is only about calculating torque from Force value, getting ship's
heading
always with correct orientation. After that, i only must call functions like
dBodyAddTorque or dBodyAddRelTorque.
<offtopic> no, de momento será un fps :) </offtopic>
----- Original Message -----
From: "STenyaK (Bruno Gonzalez)" <stenyak at gmx.net>
To: "Raul Chaparro" <raul.chaparro at pyrostudios.com>; <ode at q12.org>
Sent: Monday, May 15, 2006 10:34 PM
Subject: Re: [ODE] AI steering behaviors using ODE
> I'm not an expert in physics nor in maths, but assuming your force-related
> code is right, and since torques are the equivalent to forces when it
> comes to rotations, the code should be pretty similar: just replace
> position with angle, velocity with rotational velocity, force with
> torque... i think that should work.
>
> <offtopic>así que un juego de naves espaciales en 3d... será de
> estrategia? O:-)</offtopic>
>
> On Mon, 15 May 2006 17:50:37 +0200, Raul Chaparro
> <raul.chaparro at pyrostudios.com> wrote:
>
>> Hello. I'm new with ODE, just trying to use it to physics needed for a
>> 3D spaceship game. I have a problem about calculating torque of enemy
>> ships. Perhaps my question is more about physics than ODE, but i have
>> this problem since many weeks ago, any help would be appreciated. Thanks.
>> The enemy spaceships moves with steering behavior forces. Once force is
>> calculated, physics are updated and ship moves. The problem is that
>> resulting force is applied linearly to the Center of Mass (translation).
>> I don't know if it is possible obtain torque from this initial force,
>> because there is no rotation at CM.
>>
>> Just now i'm not using rocket engines to get the propulsion of the
>> ships. For example, to calculate force when ship is going towards an
>> enemy, i do:
>>
>> current velocity = ship.velocity
>> desired velocity = target.position - ship.position
>> Force = desired velocity - current velocity
>>
>> I would need to find how to calculate torque based on that Force. If i
>> imagine one engine thrust at the center bottom of the ship, applying
>>
>> Torque = (CM - point of force application) X Force (X = cross
>> product)
>>
>> then i obtain one torque vector that sometimes points in wrong
>> direction, which makes ship's rotation faces away target and not towards
>> target. I am trying that ship's heading always points to right direction
>> while it moves. How can i solve that?
>>
>> Other solution I've thought is create many thrusters at backwards ship,
>> all controlling torque and lineal force (for example one for each vertex
>> of the bounding box backwards), or one controlling lineal force and the
>> rest controlling only torque, but then, how to calculate the force to
>> apply to each thruster based on Force value?
>>
>> Again, thanks for your time.
>> R.
>
>
>
> --
> Saludos,
> STenyaK
>
> _______________________________________________
> Site: http://1ksurvivor.homeip.net <1kSurvivor>
> http://motorsport-sim.org <Motorsport>
> http://kwh.iespana.es <KuantikalWareHouse>
> http://emuletutorial.info <EmuleTutorial>
> ICQ: 153709484
> Mail: stenyak AT gmail DOT net
>
More information about the ODE
mailing list