Hi,

Thanks for the testing and support guys. The sliding helicopters where
really frustrating for me too.

I liked Alex's screenshot, that requires some skill...

I will go through some comments below:

Brandano wrote:
> As far as keyboard brake input, i believe this calls for some sort of
> "ramping up" input, starting with a small value that increases
> exponentially as the button is kept pressed, decreasing linearly when
> it is released, so that brakes can be pulsed to a reasonably constant
> value. I believe that flight inputs already default to this sort of
> behavior?
Yes, I think there is already a "ramping up", but landings are still
tricky as the wheels will lock quite easily. Maybe slowing down the
ramping will be enough to counter this behaviour...


Andy Ross wrote:
> Can I be a jerk and kick this back for patch formatting reasons?
Don't worry, I was already afraid of the consequences of this patch's
(lack of) organization. I'll try to add some comments and clean up the
code where possible. But I'm afraid some parts of the code will still be
messy. That's because the modification had to be spread from the Gear
friction implementation to the ground cache and even the integrator,
since the "stuck point" had to be synced with the moving body (e.g.
carrier).

It was actually even worse in my first attempt. But Mathias Fröhlich
noticed the mess and added support for some required hacks in the
groundcache. I'll try to send a new patch as soon as possible, but here
is some explaining for a few items.

>   I
> think I get the idea here: it's detecting the "stopped" condition and
> replacing the existing friction mechanism with a spring model around a
> fixed point.  And that makes sense to me.

That is basically it. But the existing friction mechanism is actually
gone, the stuck point is used for the rolling wheel also. What it does
when the wheel is rolling is to move the stuck point only in the
direction the wheel is pointing (it can move sideways by a small angle,
since wheels are "funky"). Laterally (skid axis) the spring is still
there. So now, when cornering, there is a difference between the
condition when the wheel still has grip, and when the wheel starts to
slip. You can notice that difference very clearly when the wheel locks
during landings.

It would be nice to flag the wheel slipping somehow, so a skidding sound
could be played.

> But it's really hard to review: there's no commit message explaining
> what's happening;
I am not very familiar to the patch submission protocol. This is my
first submission. Should I just send you a commit message by e-mail or
is there a patch submission system somewhere? I am new to git also, in
case that is where this should be done.

> lots and lots of the modifications are just
> whitespace changes to existing code that I have to prune out to read
> the real changes;
I am sorry about that. When I first started working on some files, there
was a mix of tab indents and spaces. I tried to identify the predominant
indentation and fix the file. I realize now that it wasn't a good idea
to do this in the same patch as the actual modification.

>  some things just don't make sense, like the apparent
> addition of tmul33() and family to Math.hpp which I swear was there
> before...
I think there is no new functions in the Math.hpp, I've just overloaded
some of the existing functions so they could handle doubles. I needed
this since I had to convert the carrier (body) transforms from world
coordinates to local and vice-versa.

> Would it be too much to ask for Diogo (or anyone else) to do a cleanup
> pass on this?
I will try to send a new patch by this weekend. But when reviewing it,
here is a tip. The diff seems to misplace some insertions on heavily
modified files (i.e. Gear.cpp). Instead of showing one large removal and
one large addition, it merge the versions using some common lines as
divisors. It may be easier to create a branch, apply the patch and then
use the diff just as a index to find the new code.

Regards,

Diogo



------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
Flightgear-devel mailing list
Flightgear-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/flightgear-devel

Reply via email to