Creating a TMD file for a hot air balloon

  • My aim is to make a hot air balloon that will work in Aerofly. First the bad news: I have no previous experience of 3D modelling or games development. Now the good news: my background is in physics (as an academic subject though - not in the gaming sense) and I have a willingness to learn new things.


    As stated in the Wiki there are 2 major stages to such a project: (1) creating the 3D model and importing it into Aerofly; (2) creating the aircraft description.


    Regarding stage #1 above, I've played around with the trial versions of 3DS Max and AC3D, and quickly come to the conclusion that I have a lot to learn! However ultimately I feel that this stage is do-able so, rather than spending a lot of time creating the perfect model and then finding myself stymied at stage #2, I've decided to model the balloon as a simple cube and proceed immediately to stage #2.


    For stage #2 the first thing I did was to copy and paste everything from the Sopwith Camel folder and delete all the obvious things - the compressed textures, sound files, etc. As far as I can see the only thing I'm left with that will cause me any trouble is the TMD file. I have in mind a very simple physics model for my cube/balloon ..... (a) constant horizontal velocity equal to the velocity of the wind, and (b) vertical acceleration (up or down) which is a function of the time the burner has been on and also the interval between "burns". My plan is to assign the gas burner to "throttle" and change its effect from the horizontal (x-y) plane to the vertical (z) axis. Looking through the contents of the Camel's TMD file I get the impression that I could probably delete/ignore 95% of it - but what is the 5% that I need to keep, and how do I translate from my mathematical model to the code used in the file? Is it even realistic of me to expect to be able to do this without being a professional developer? This is where I need some help. I expect there to be a lot of fiddling around and trial and error - but I just need some kind of pointer(s) to set me off in the right direction.

  • antigoon Good question. It's true that the real physical situation is "lighter than air" but the mathematical situation is merely vertical velocity/acceleration. I guess this would also be needed for helicopters? However it could be that, since there are no helicopters yet, those lines of code are absent from the current aircraft TMD files?


    Actually it's also just occurred to me that, even with the current crop of aircraft, there must be something in the code modelling "lift" - and this lift must be related to the throttle setting (and the speed etc). In the balloon it only needs to depend on the throttle/burner setting and duration, and how much time has elapsed since the last burn. Maybe the lift code could be adapted? With the balloon the "throttle" could be treated as binary (i.e. either on or off) - so maybe that could simplify things a bit?


    I've rather ignored the horizontal motion (horizontal velocity = wind velocity) because it looks a lot simpler. But is it? I'm not sure. I guess there must be something in the current code that models the sideways push of the wind. Maybe it could just be beefed up a bit for the balloon?

  • For now you can cheat by giving the balloon a large air friction (aerofuselage with correct dimensions) and then add a thrust engine to compensate the weight.

    There was a buoyancy object in the Aerofly RC, don't know if that is still implemented.