> This is more of a code architecture issue. Once something has left > the aircraft, it ought be be handed to a simple "ballistics FDM" or > somesuch. Making it "disappear" from the aircraft model is as simple > as adding a select animation and can be done right now. And you can > set the weight tag to zero to get the FDM behavior correct. > > Running it under a separate "FDM" handler is something that the C++ > code just doesn't support yet, though. It's probably not hugely > difficult to make work, though.
A simple ballistics FDM already exists, located at src/AIModel/AIBallistic.cxx, and it works nicely on its own. What is needed is for every FDM to have the ability to be a master or slave of any other FDM. When in slave mode the slave FDM will get its [x,y,z,pitch,roll,bank] info from the master. When released the slave will begin using its internal calculations. It wouldn't be hard to add this to AIBase (the base class for AIBallistic, AIAircraft and AIShip). Yasim and JSBSim could then have the master/slave ability added (JSBSim already has something like this, but it wasn't designed to work with all the other FDMs). I think we just need to define the interface for every FDM, and the struct for passing the [x,y,z,pitch,roll,yaw] data. If you want the slave FDM to effect the master, then it gets more complicated. A simple FDM, like AIAircraft, can ignore the effects of the slave, but a complex FDM, like Yasim or JSBSim, would probably want to be effected by the slave. For instance, if you make the JSBSim X-15 a slave to an AIAircraft B-52, then the B-52 can ignore the effects of the X-15. If the X-15 is a slave to the Yasim B-52, then the B-52 will probably want to figure in the effects of the X-15. One thing that needs more work is in ensuring that the master and slave models get drawn at the same time. I'm no graphics guy, so that's out of my league. I've noticed this is a problem when pulling up behind the AI KC-135 (or any AIAircraft object). The AI object appears to leap forward in about 20-foot bursts. It would look funny if the AIBallistic-based external fuel tank didn't follow the aircraft smoothly. Curt had the idea of using a central graphics manager to manage the drawing of all objects, and that might do the trick. Dave -- **************************** David Culp davidculp2[at]comcast.net **************************** _______________________________________________ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel