Aircraft Development

  • Hi all!


    I've recently purchased Aerofly and have fallen in love with it. The VR is top-notch.


    I'm an aircraft developer for another Flight Sim and I am doing some RnD to assess the viability of porting my aircraft over to AFS. If it's something that is achievable (within a reasonable amount of time), I will seriously consider porting all my future aircraft over as well.


    I'm wondering if anyone has any tips with bringing an aircraft into AFS? It'd be great to get both the developers perspectives, as well as my fellow 'noobies', as something simple for the devs may not be so simple for someone such as myself looking at this with fresh eyes.


    I know this topic is very vague, but if anyone has had any "ah, so that's how you're supposed to do it" moments, or just general advice I'd love to hear it! For example, I've started out by copying the F4U files, renaming them and digging through the tmd file deleting all graphicobjects except the fuselage. Is this a good way to start?


    I'll be posting plenty of questions to this thread, as well as my own advice/things I've worked out that weren't so obvious over the coming days/weeks.


    I'd also like to thank Jan for spending his time to help me out!


    Cheers,

    Alex

  • Hi Alex,


    From which Flight Sim are you coming and which modelling program are you using? In case of the FSX/P3D line and Max I can basically help to get the model exported.


    For the TMD, so the file which brings our 3d models alive and into the sim, is Jan (Jet-Pack) the right person. He's the most helpful guy you can imagine.


    Generally spoken, developing a plane for Fs2 is more hard than for P3D, as the TMD is complex, but in the same way it has a lot more potential.


    Cheers,

    Kai

  • Hey Kai,


    Thanks for the reply. I am coming from X-Plane. I use Blender as my main application, but I am using 3Ds Max as the middle-man for Fs2.


    Jan has been super helpful already, I love the support that the devs are giving us!


    Cheers,

    Alex


    Edit: Any chance you would know how to troubleshoot an invisible mesh?

  • Edit: Any chance you would know how to troubleshoot an invisible mesh?

    Hi Alex,

    parts usually become invisible when their textures are missing. Check the tm.log file in your Aerofly FS 2 directory as well as the tm.log file in your intermediate folder (with the tgi file and bmp textures) right after the export and then again after converting the aircraft.

  • Thanks Jan!


    Looks like I am missing textures, however I have no idea what it is referring to.


    Code
    1. 13.77-tmcollision: ERROR: (texture 'lederkappe001_specular' not found)
    2. 13.82-tmcollision: ERROR: (remove invalid texture at index 'specular')

    Ah it's the pilot. Removed that line and the error has gone - still no mesh however.

  • Yep, that would be the pilot.


    Regarding the missing parts:


    Ok just to check if you did all this

    - have a 3D geometry in the model that is called "Fuselage"

    - have a material assigned to it

    - material has textures for the "usual channels" like in the dr400 example

    - all of the model was selected and exported via export selected
    - exporter wrote the .tgi file to the intermediate directory

    - exporter tm.log file (should be in intermediate directory) does not hint to any erros

    - intermediate directory has the same name as the tgi file

    - textures have been exported as 24bit bmp images into the intermediate directory

    - there are .tmd, .tmc files in that intermediate directory

    - tmd and tmc have the same name as the tgi file (and not dr400.tmd for example)

    - the entire tmd GeometryObjects section (a.k.a. graphics section) was cleaned up with only the fuselage being left overlooks like this:

    Code
    1. <[pointer_list_tmgraphics][GraphicObjects][]
    2. <[rigidbodygraphics][Fuselage][]
    3. <[uint32][PositionID][Fuselage.R]>
    4. <[uint32][OrientationID][Fuselage.Q]>
    5. <[string8][GeometryList][ Fuselage ]>
    6. >
    7. >

    - in the DynamicObject section (a.k.a. physics or dynamics section) all objects "collisionhull" were removed or commented out

    - aircraft was converted

    - converter did not write any issues into its tm.log (also in intermediate folder, overwrites the export log I think)

    - aircraft folder (user\Documents\Aerofly FS 2\aircraft\your_aircraft) exists and contains a tmb, tmc and tmd with the same name as well as the assigned textures for the fuselage object (e.g. fuselage_color.ttx)

    - aircraft is visible in aircraft selection menu

    - loading the aircraft crashes aerofly -> see user folder tm.log for errors

    - aircraft loads in sim but is invisible -> check tm.log for errors


    (maybe this checklist belongs into the wiki :D )

  • The model is in the engine! I repeat, the model... is in the engine!


    I 100% agree this checklist should go in the wiki!


    The next thing... I've set up the materials (correctly as far as I can tell), but the report is telling me:


    Code
    1. geometry referenced multiple times: Fuselage
    2. texture Fuselage_ambient.bmp not used
    3. texture Fuselage_color.bmp not used
    4. texture Fuselage_normal.bmp not used
    5. texture Fuselage_reflection.bmp not used
    6. texture Fuselage_specular.bmp not used

    Thanks so much Jan!


    EDIT: I renamed all the textures to a lowercase fuselage and moved the project out of my Dropbox directory and I have a flying, textured fuselage! Progress :D

  • Hi Donny


    Welcome to the mad house.


    For item 1..ignore it, it will always be there, or at least it is for me

    for 2 to 6...have you re-applied the textures in max and applied a uv map to them.


    For the moment you can pretty much forget 2, 4, 5 and 6, number 3 is the most important to see if the model in the sim, the rest are eye candy. Any material you make in max, I would recommend to included all the texture slots, even if you don't plan to use them at first, it help later if you do. Sure you will get the errors listed above but the sim works just as well. A stand in bmp can be used, ie all black.


    Tm.log from the exporter does not get over written by the converter, that produces the report.txt, get used to looking at this, some errors can be ignored some need attention. The main sim also produces a tm.log (popular name) this can be very useful to track down your errors. If the Sim crashes as soon as you launch your model then check for duplicate names in the TMD, Converter tm.log is useful for pivot point information, which you will use a lot.


    The TMD can be a pain in the butt but it is very powerful and worth getting to know, As you already know Jan is very helpful and will solve pretty much everything.


    Steve

  • Thanks for the kind welcome and your help Steve. I've managed to get a bulk of my exterior model into the sim, minus any parts that will be animated (I'm assuming they will live in a different area of the graphicsObject?).


    The textures are working except it's totally reflective (I worked in Substance Painter with a PBR workflow, so there is probably some calibration issues. Not too concerned about it at the moment, just excited I can see it!).


    Any advice on how to proceed from here?


    Cheers,

    Alex


    Edit: I've gotten the Rudder to animate... There's no stopping me now! ;)

    Edit2: All control surfaces basics setup 8-)

  • Hi Alex,


    Wow, that's some progress in shortest time!


    The textures are working except it's totally reflective (I worked in Substance Painter with a PBR workflow, so there is probably some calibration issues. Not too concerned about it at the moment, just excited I can see it!).

    When I started, I made this (quick and dirty) chart. It's coming from my "experimenting time", but maybe it gives you some indication:



    Kai

  • Wow, thanks for that Kai! Right now everything is bright red, so that would explain why I'm looking at a flying disco ball ;P


    What is the general workflow when developing the aircraft after all the art is complete? I'm sort of looking at trying to get the exterior up and running, then work my way into the interior (I have to rename everything... my aircraft has a lot of wires, screws etc :c).


    Also, for anyone who might google it, I believe the Specular alpha is essentially the gloss map.


    Cheers,

    Alex

  • I've got no knowledge about this stuff, but its very exciting. I sense we are building a critical mass of skilled aircraft designers (Krysz just came on the scene too in the last week or so) and 2019 will be amazing for FS2.

  • What is the general workflow when developing the aircraft after all the art is complete? I'm sort of looking at trying to get the exterior up and running, then work my way into the interior (I have to rename everything... my aircraft has a lot of wires, screws etc :c).

    Screws and wires that have no function other to look cool should be attached to the fuselage object.


    The general workflow...

    Well the order is up to you but there are several things that need to be done for any aircraft.


    Things to be done: Change the contact points in the tmc file so that your aircraft is initially placed onto the runway,

    then in the tmd physics section move the rigidbodies around, resize them, change their masses, change the joints, then do the gear physics (gear animation does not exist in aerofly, it is physically simulated), then aerowing geometry, aerofuselage geometry, control deflections (physical deflection), propeller geometry, engine power,

    In the meantime you attach your geometries to the rigidbodies from the physics section one by one, e.g. couple the left wing graphics to the rigidbody of the left wing so that the geometry moves and rotates with the physical body, Animate primary flight controls (deflection angle from physics).


    After that it is usually a good idea to go through the dynamics section and remove all the things that are left overs from the old aircraft and no longer needed. Then start adding things like gear lever, flap lever, instrument light dimmers, hook up the light inputs to your luminance and illumination textures and see if that is working, then you could do external lights, basic instrumentation like airspeed, attitude, etc. and then finally move over to the navigation side of things, HSI, etc.

  • All filenames in lowercase. All object names in CamelCase. This will serve you well in the long run, plus it is easy to read and understand.


    Regards,

    Ray

  • That's great to hear!


    I think you might have something extra to be excited about Mr Spit40 ;)

    I can barely contain myself. The last time I modelled a Spitfire it looked like this. My airport modelling skills have improved since 1985 but sadly not my aircraft design.



  • I can barely contain myself. The last time I modelled a Spitfire it looked like this. My airport modelling skills have improved since 1985 but sadly not my aircraft design.



    Wow honestly I am impressed. I would not be able to create something like that..


    I'll share some of my images once I've completed more. The art is pretty much 98% complete, so it's just a matter of porting it over (and doing all the hard stuff :S


    Thanks Jan, that's a very intimidating list you've got there :D I look forward to this challenge.


    Thanks Ray. Looks like FILE names are lowercase, and OBJECT names are CamelCase which isn't too bad.