View Full Version : .X exported files have no UVs!

02 February 2008, 04:28 PM
I have been trying to export to the Direct X format for use in game environments like Dark Basic and Blitz3D. The animation exports correctly but all the UV data is gone. The object has no textures in the game environment because of this. I am positive that the models I import into Messiah have UVs mapped and when I render the objects in Messiah I can see the texttures applied correctly to the objects there.

Anyone have a way to work around this?

02 February 2008, 05:02 PM
Could you not apply the exported animations to the UV'd models in the game engine?

02 February 2008, 09:36 PM
I finally got right, but it wasn't easy. I'm posting my workflow here to help out anyone who wants to export animated .x files into Blitz 3D or Dark Basic for game programming.

1. Model, UV map, texture your object and save it in OBJ format.
2. Import the model into Messiah. Rig and animate
3. Export the animated .x file from the Customize tab (Note: Set the Time per Frame to 1)
4. Open the original, unanimated model in Ultimate Unwrap 3D Pro.
5. Choose Export->UVs from the file menu.
6. Open the animated model in Unwrap 3D
7. Choose Import->UVs and choose the file you just exported.
8. Double click the object's material to open the material editor. Import the object's image map as the Diffuse map.
9. Export the animated, UV'd, model to .X or .B3D (Blitz 3D's native format)

Whew! It's a mess of a workflow, but it's the ONLY thing I have found which displays both animation and textures.

02 February 2008, 10:20 PM
awesome! Glad you figured it out. Can we see what your working on?

06 June 2008, 08:07 PM
I'm having problems with getting UV'd messiah stuff out cleanly.
I've ONLY been successful with files that have one surface and
are pre-tripled (i.e. going into messiah). I'm using LW 9.3.1 and
Messiah 2.5d (dabbled with 3.0 and old DX exporter, but thought that
wasn't wise).

Using this method, I can get one surface through cleanly. I've tried
combinations of:

* Use OBJ
* Quads/Tris
* Weld/Unweld

The (marginally) successful process is:

* Model LWO (One Layer, One UV set, One Surface(Material))
* Triple Object
* Rig/Animate Messiah
* Export DirectX Messiah
* Export orginal LWO w/ DStorm plug
* Load DStorm .x file with Ultimate Unwrap 3D, save BUV file
* Load Messiah file, import BUV

This seems VERY cumbersome and I cannot use more than one material.

I've tried to copy Bugzilla's and Shadowfork's method.

Please advise if there's something I'm missing. The test model's I've tried are not
very complicated. One "Doggie" in the samples folder.

Thanks in advance for any help.


06 June 2008, 02:15 PM
Seems odd that all of your surfaces/UVs work but one. Software tends to either work or not work. If you really want to test out a pipeline you need to make sure that you are in full control of everything that goes in and out of it. I'd make sure that you only use your own models that you built yourself, UV'd yourself etc. So when you see a problem area you can remember how you built it and quickly isolate what is different about that problem area because you happen to know the guy who built it. :-)

06 June 2008, 04:18 PM
Thanks for the reply Wegg.

To be clearer---

I've tried two models. One, the doggie which I UV'd in Max, Another one competely built and UV'd in LW 9.3.1.

I got the Doggie to come through w/ animation ONLY when tripled and reloaded.
I got the other model (called "Andy") through w/o animation as long as there was only one surface and tripled. Andy is the model made entirely in LW.

The strange thing is, I cannot get Andy through correctly with more than one surface. All geometry is on one layer. The closest I've come is to save Andy to obj, triple and unweld.
This produces UVs that look correct but are skewed (flipped randomly).

Hope this explaination helps.

I guess my next test would be to add a simple second material to the functioning Doggie piipeline and see if that breaks it.

I guess my first question is----Does everyone else have to triple their model into Messiah for it to come out right? I have had NO success unless I do this.

Thanks again,


06 June 2008, 09:00 PM
I think the list of people using the .x exporter is . . . 1. You my friend are breaking new ground. :-)

06 June 2008, 08:58 AM
I'm not entirely sure about this, but as far as I know, DirectX objects need to be triangulated and one surface/one UV only. like an OBJ format. and I'm guessing the DX exporter in messiah doesn't triangulate or strip down your surface, since it's an animation tool, that's why you have to triangulate your mesh just like you do in any 3D software prior to exporting to a game engine!

Hope that helps.


06 June 2008, 03:26 AM
make that 2. I want the x exporter to work well too so I can bring my animations into other apps easily. I havent messed with it much yet but the tests i did were not great. I tried exporting and importing uv's to a model before with ultimate unwrap. I got some weird triangulation of the texture map in areas but it was fine in others. I need to mess with it more I guess.

06 June 2008, 09:21 AM
Messiah automatically triangulates the mesh when exporting to .X files. Therefore you have to pre-triangulate the mesh in your modeler before using it in messiah, otherwise the vertex information doesn't match anymore. What I have done successfully is:

- Model in LightWave, triangulate it and export it with DStorms .X exporter in ASCII mode.
- Animate in messiah and export it in ASCII mode to another .X file
- Merge these files using a text editor. The .X format is not so difficult, so this possible. Basically search for surface and texturing information and copy and paste from one file to the other.

Ok, this is cumbersome, but it works. How to handle multiple surfaces I don't know.

CGTalk Moderation
06 June 2008, 09:21 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.