[Opensim-dev] Questions about Vehicle scripting calls

Justin Clark-Casey jjustincc at googlemail.com
Thu Jun 7 04:02:09 UTC 2012


I can confirm that the behaviour of both of these differs compared to the LL grid, as Mike has described.

I don't immediately see any good reason for the different behaviour.  I may take a look at these myself but it will take 
me some time to get up to speed with the ODE vehicle code (not a huge amount contained in ODEDynamics and ODEPrim but it 
does involve math), so if anybody else wants to leap in with patches then please do.

On 06/06/12 00:46, Mike Higgins wrote:
> I was talking to Justin Clark-Casey at the OpenSim developers meeting this morning, and he suggested that the mailing
> lists would be the easiest way to have a conversation about vehicle physics on OpenSim. Justin you there? Is this where
> you meant? Anyone else want to talk about vehicle scripting in OpenSim?
>
> I am in the process of testing the OpenSim vehicle scripting calls and trying to find out what works and what can be
> worked around. I am submitting mantis reports when I think I see a true bug, issue numbers 0006039
> <http://opensimulator.org/mantis/view.php?id=6039> and 0006040 <http://opensimulator.org/mantis/view.php?id=6040> for
> starters. Instead of submitting 1000 line vehicle scripts that do not work, I am writing small 10-line scripts that
> demonstrate a particular problem.
>
> Issue 0006040 <http://opensimulator.org/mantis/view.php?id=6040> is particularly interesting because if my hypothesis is
> correct, the linear motor direction is being actively projected onto the global XY plane. I cannot get an airplane to
> glide up, or a balloon to rise using the linear motor. (Hover height works with balloons, but not the linear motor even
> with hover height disabled). The interesting thing about this is that my hypothesis suggests that there is extra code
> doing this projection onto the XY plane. I checked the vehicle flags and there isn't one that should force this extra
> projection into the calculations. Vehicle type balloon is supposed to have all the flags removed, but just to be sure I
> used the remove call to clear them all. The linear motor still cannot go up. Can someone familiar with the code look at
> the linear motor and tell me why this is happening and if there is a way to disable it? (I tried turning flags like
> VEHICLE_FLAG_NO_DEFLECTION_UP on to see if this flag was inverted, and if it applied to the motor instead of deflection,
> but no luck).
>
> The fun thing is that I can write one kind of vehicle that works well -- assuming this bug is there. I built a vehicle
> that has the linear motor set to <0,0,20>, pointing straight up. When the vehicle is perfectly horizontal, the
> projection of this motor onto XY is <0,0,0> and the vehicle does nothing. But then when you tilt the vehicle in any
> direction, the projection of the linear motor on XY becomes non-zero and causes it to start moving in the direction of
> tilt. This feels a lot like an RL helicopter, so I used the control keys to pitch down/up to move forward/backwards,
> added yaw left and right, and used page-up/down to increase/decrease the hover height. I put it in a hacked together
> helicopter build and it is a lot of fun!
>
> I'm looking for work-arounds for the current vehicle routine behaviors. One work-around for an airplane is to turn on
> hover height, check the airplane speed and pitch once a second in timer(), calculate what altitude the plane should get
> to in the next second, and set hover height to that altitude. The things we do to get stuff working!
>
>
>
>
>
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-dev


-- 
Justin Clark-Casey (justincc)
http://justincc.org/blog
http://twitter.com/justincc



More information about the Opensim-dev mailing list