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