![]() |
|
|||||||
| Register | Wiki | Downloads | FAQ | Members List | Social Groups | Calendar | Search | Today's Posts | Mark Forums Read |
| 3D Objects General Use this forum to discuss 3D objects related questions that do not fit in any of the other categories about specific tools. |
![]() |
|
|
Thread Tools | Display Modes |
|
#1
|
||||
|
||||
|
Blender <-> FSX MDL
Here are some scripts to import and export FSX MDL models to and from Blender. Basic documentation is included.
The following FSX features are curently not supported:
Please let me know if you have any questions, problems or if you're missing a feature (or if you can help me understand how animations are encoded in an MDL file )
Last edited by Marginal; 13 Jan 2008 at 18:07. |
|
#2
|
|||
|
|||
|
While I'm certain that some will applaud the export capabilities, be prepared for some possible grief over the importer...
I cannot for the life of me imagine why any modeler would need to "import" their compiled model back into Blender (or any other 3d modeling program for that matter).
__________________
Bill Leaming 3d Modeler Max/GMax C & XML Gauge Programmer Eaglesoft Development Group http://eaglesoftdg.com Intel® Core™ i7-3770k 4.2GHz - Crucial 16GB DDR3 - Dual Radeon HD770 1GB DDR5 (Crossfire) - Eco II Watercooling - Win7 64bit Intel® Core™ i7-2600k 3.4GHz - Crucial 4GB DDR3 - NVIDIA GeForce GTX550Ti 1GB - Win7 64bit Intel® Core™ i7-860 2.8GHz - Crucial 8GB DDR3 - NVIDIA GeForce GTS240 1GB - Win8 64bit NOTE: Unless explicitly stated otherwise, everything written by my hand is MY opinion. I do NOT speak for any company, real or imagined...
|
|
#3
|
||||
|
||||
|
I'm keeping fingers crossed for progress on the exporter. We do need a new freeware solution to make FSX compatible aircrafts and sceneries.
Thanks, Mike Last edited by empeck; 14 Jan 2008 at 14:49. |
|
#4
|
||||
|
||||
|
Hi,
Thanks, very interesting. I just started to read more about Blender with the idea of looking for some exporting tools later. May I ask why you decided to go for direct MDL export? I think the preferred way is to write the X file and let XtoMDL make the MDL file. This is also easier as XtoMDL can do a lot of optimizations for you. And I agree with Bill on the MDL import functionality. That is something we should be really careful with (especially in loading it into a modelling tool), as it would allow people to steal and modify other peoples work a lot easier.
__________________
Arno If the world should blow itself up, the last audible voice would be that of an expert saying it can't be done. FSDeveloper Administrator | Former Microsoft FS MVP
|
|
#5
|
|||
|
|||
|
Quote:
...without which NO animations would be possible for FSX models...
__________________
Bill Leaming 3d Modeler Max/GMax C & XML Gauge Programmer Eaglesoft Development Group http://eaglesoftdg.com Intel® Core™ i7-3770k 4.2GHz - Crucial 16GB DDR3 - Dual Radeon HD770 1GB DDR5 (Crossfire) - Eco II Watercooling - Win7 64bit Intel® Core™ i7-2600k 3.4GHz - Crucial 4GB DDR3 - NVIDIA GeForce GTX550Ti 1GB - Win7 64bit Intel® Core™ i7-860 2.8GHz - Crucial 8GB DDR3 - NVIDIA GeForce GTS240 1GB - Win8 64bit NOTE: Unless explicitly stated otherwise, everything written by my hand is MY opinion. I do NOT speak for any company, real or imagined...
|
|
#6
|
||||
|
||||
|
A blender exporter for FSX and FS9 would be great, because we actually also convert the sceneries for X-Plane and this would no longer be necessary. Blender is THE prefered tool for X-Plane.
Jörg
__________________
www.flightport.de |
|
#7
|
||||
|
||||
|
I'd prefer blender -> .x -> xtomdl -> mdl route too.
It would be easier to make custom animations. Mike |
|
#8
|
||||
|
||||
|
Quote:
The reason that I invoke XToMdl directly rather than just leaving this step up to the user is that I suspect that most users find running command-line tools difficult, don't know how to hack the .x file, and have no wish to hack the .x file. Quote:
Quote:
I would have written a Blender gmax importer or a gmax exporter, except for the fact that the gmax file format is undocumented and gmax appears to be deliberately crippled to discourage people from importing or exporting. So importing the .MDL file appears to be the only practical option. I don't condone copyright infringement, but I'd point out that if people want to rip off your models they can already do so - they can use your textures and aircraft or scenery MDLs. Adding the ability to load an MDL into Blender doesn't significantly change this situation in my opinion. Quote:
*: As an aside, I learned about the importance of providing users with ways to migrate their content from existing apps from reading an account of how Jeff Raikes, who ran the Microsoft Applications team in I think the early 90s, took on WordPerfect. In short, if you want to supplant an existing product then you have to provide ways for users to get their content out of the existing product and into your product. Ideally, and perhaps non-obviously, you should also provide users with a way of getting their content out of your product and into the existing product so that they feel that they can safely try your product without getting locked in. Last edited by Marginal; 14 Jan 2008 at 20:42. |
|
#9
|
|||
|
|||
|
Quote:
Complicating matters is that the XML Schema used for FS9 is very different to the XML Schema developed for FSX, so you would have to branch your script depending on which platform the user is exporting for... ...or have two different scripts at a minimum. ![]() In addition, an FSX model requires an ProjectName.xamim file, which together with the ProjectName.x file are parsed by XtoMDL.exe to compile the finished .mdl file. Max/GMax simply exports animation tracks; i.e., a key-frame matrix. The conditions and all other driving information comes from the XML scripts. For example, here is an nnn.xanim for an object with a "rudder" animation file. This file would have to be generated by your Python script (or whatever handler you pass control to). It combines data from the model's animation matrix with data from the modeldef.xml file: Code:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<AnimLib version="9.1">
<Anim name="rudder_percent_key" guid="5433b2a0-0fd9-4192-8f7d-0ba36bf7191d" length="100.000000"
type="Sim" typeParam="AutoPlay" typeParam2="rudder_percent_key">
<AnimStream name="Rotation" id="0" partName="rudder" length="100.000000">
<Keyframe time="0.000000" type="Quaternion" data="0.000000;0.000000;0.000000;1.000000"/>
<Keyframe time="50.000000" type="Quaternion" data="0.000000;0.000000;0.174253;0.984701"/>
<Keyframe time="100.000000" type="Quaternion" data="0.000000;0.000000;0.344016;0.938964"/>
</AnimStream>
</Anim>
</AnimLib>
Code:
<Animation name="rudder_percent_key" guid="5433b2a0-0fd9-4192-8f7d-0ba36bf7191d" length="100" type="Sim" typeParam2="rudder_percent_key" typeParam="AutoPlay" />
<PartInfo>
<Name>rudder_percent_key</Name>
<AnimLength>100</AnimLength>
<Animation>
<Parameter>
<Sim>
<Variable>RUDDER DEFLECTION PCT</Variable>
<Units>percent</Units>
<Bias>50</Bias>
</Sim>
</Parameter>
</Animation>
</PartInfo>
...to be truly successful, your script(s) would need to replicate the .X file and .XANIM files perfectly.
__________________
Bill Leaming 3d Modeler Max/GMax C & XML Gauge Programmer Eaglesoft Development Group http://eaglesoftdg.com Intel® Core™ i7-3770k 4.2GHz - Crucial 16GB DDR3 - Dual Radeon HD770 1GB DDR5 (Crossfire) - Eco II Watercooling - Win7 64bit Intel® Core™ i7-2600k 3.4GHz - Crucial 4GB DDR3 - NVIDIA GeForce GTX550Ti 1GB - Win7 64bit Intel® Core™ i7-860 2.8GHz - Crucial 8GB DDR3 - NVIDIA GeForce GTS240 1GB - Win8 64bit NOTE: Unless explicitly stated otherwise, everything written by my hand is MY opinion. I do NOT speak for any company, real or imagined...
Last edited by n4gix; 14 Jan 2008 at 21:57. |
|
#10
|
|||
|
|||
|
Hi,
In the file Blender2FSX I read for the requirements: Quote:
As FS SP2 gives so many problems... maybe I should wait until a better way is developped or simple start from zero with Blender ? Can I install directly SP2 without SP1a and uninstall it without damage ? Or can I export from GMAX to Blender ? The discussion here is interesting but not always easy to understand. Greetz. José. |
|
#11
|
||||
|
||||
|
Hi,
Quote:
Quote:
In my opinion the copyright trouble when somebody can actually edit my model, is a lot bigger than when they just use the texture or MDL file as is. But this is indeed a tricky point, maybe it would be a good idea to start a separate discussion about this topic. I have been thinking about other import option that would "prove" the user actually has the source. For FS2004 MDL files you can think of importing the ASM files (I haven't seen MDL decompilers yet). Unfortunately for FSX I did not find something that could be imported and only made if you have the sources.
__________________
Arno If the world should blow itself up, the last audible voice would be that of an expert saying it can't be done. FSDeveloper Administrator | Former Microsoft FS MVP
|
|
#12
|
||||
|
||||
|
I see one real advantage of decoding FSX MDL file, maybe one developer will be able to create a program similar to Aircraft Containter Manager.
Setting contact points and lights directly in cfg file can be annoying ![]() Mike Last edited by empeck; 15 Jan 2008 at 13:26. |
|
#13
|
||||
|
||||
|
Quote:
understand the copyright concerns but what about a special object that must be merged by the author e.g. in Gmax or FSDS and which will be compiled together with the object itself. This could be used in the MDL-file for the provement, that you own the source file? Jörg
__________________
www.flightport.de |
|
#14
|
||||
|
||||
|
I don't think it will work with the original RTM SDK. It may work with the SP1 SDK - I just haven't tried. Why don't you try it and see?
Quote:
Quote:
Quote:
I'm unsure how to handle custom animations. I hadn't realised that the only way to make custom animations in gmax appears to be to edit modeldef.xml. I'm not sure whether to follow that approach, or to provide the user with a way to input the info for custom animations in Blender. Thanks for the offer. I have enough to be getting on with in TestX.xanim at the moment, but I might want to take up your offer later. |
|
#15
|
|||
|
|||
|
Quote:
![]() There's a whole lot more than simply animations that is contained in the modeldef.xml file. It also controls lighting conditions, works with custom (L:var,unit) variable types to interact with the gauge system, sets conditional code for attachpoint visibility, et cetera. All three of the new FSX Acceleration models make use of embedded XML code in the model to drive 3d gauges in the virtual cockpit, and also provide a bi-directional interface to the C gauge portion of the panel system. Many modelers are now incorporating 3d modeled gauges in their virtual cockpits, and my best guess is that this will continue to gain in popularity with FS11. In short, there's a lot more in a .mdl file these days than mesh geometry and material properties...
__________________
Bill Leaming 3d Modeler Max/GMax C & XML Gauge Programmer Eaglesoft Development Group http://eaglesoftdg.com Intel® Core™ i7-3770k 4.2GHz - Crucial 16GB DDR3 - Dual Radeon HD770 1GB DDR5 (Crossfire) - Eco II Watercooling - Win7 64bit Intel® Core™ i7-2600k 3.4GHz - Crucial 4GB DDR3 - NVIDIA GeForce GTX550Ti 1GB - Win7 64bit Intel® Core™ i7-860 2.8GHz - Crucial 8GB DDR3 - NVIDIA GeForce GTS240 1GB - Win8 64bit NOTE: Unless explicitly stated otherwise, everything written by my hand is MY opinion. I do NOT speak for any company, real or imagined...
Last edited by n4gix; 16 Jan 2008 at 00:11. |
|
#16
|
||||
|
||||
|
Quote:
I would and really would like to switch to blender in the near future but only with an FS9 exporter available. Otherwise I would stay with Gmax until we know what happens with FS11. My personal view of this topic Jörg
__________________
www.flightport.de |
|
#17
|
||||
|
||||
|
Quote:
I understand that the FSX MDL format doesn't allow you to make ground polygons or BGL tweaks like rotate-to-user, but I had thought that people were using the FS2002 gamepack or ASM for the former, and that the latter doesn't work so well in FSX because of problems with transparent textures. Please forgive my ignorance - what am I missing? As you can tell, I'm reluctant to put a lot of work in to import/export the FS9 format if there's not a solid reason to keep using it. |
|
#18
|
||||
|
||||
|
Quote:
that is the way I see the things actually and yes it is a tricky situation at the moment and for the next time until FS11 is out. An import for FS9 is not necessary in my eyes because if I have the source file in Gmax or FSDS I could also use the FSX exporter for that case. If you want to import the object in blender, one way for importing would be enough I think. The exporter would be needed for two cases:
Jörg
__________________
www.flightport.de |
|
#19
|
||||
|
||||
|
Quote:
For animations and aircraft I guess it might not though .
__________________
Arno If the world should blow itself up, the last audible voice would be that of an expert saying it can't be done. FSDeveloper Administrator | Former Microsoft FS MVP
|
|
#20
|
||||
|
||||
|
Quote:
.Yes, the X file would be great for that, but there is no way to get that from GMax indeed. At the DevCon I heard some things about XML export, but I still have to look into that. Will let you know when I have done that.
__________________
Arno If the world should blow itself up, the last audible voice would be that of an expert saying it can't be done. FSDeveloper Administrator | Former Microsoft FS MVP
|
![]() |
| Tags |
| blender, blender2fsx |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| MDL Tweaker does not work with FsX MDL file | arno | MDL Tweaker | 0 | 18 Mar 2007 04:46 |
| What do I do after the mdl extraction? | jimmis | GMax and 3DS Max | 12 | 11 Jan 2007 05:13 |
| BGL_LIGHTS and MDL Tweaker | gadgets | GMax and 3DS Max | 2 | 05 Jan 2007 20:57 |
| Comparing MDL Files | scruffyduck | General | 6 | 20 Dec 2005 16:03 |
| MDL Hex editing? | flightsimstudios | General | 1 | 12 Mar 2005 15:05 |