Game Development Community

XSI DTS Exporter Beta 2 Download

by Matt Summers · in Artist Corner · 02/02/2009 (10:14 pm) · 330 replies

www.darkindustries.com/gg/xsi/di_xsi_header.png
Whats New:

www.darkindustries.com/gg/xsi/dts_files.pngThis is an updated version of the XSI DTS exporter which corrects issues with exported animation transforms, adds support for exporting .DSQ animation files, and fixes several other small bugs. This version of the exporter now also requires adjustment of the bounds axes for proper export. (see basic setup section below for more information)

The file download includes the new plugin, 2 sample scenes in XSI 7 and XSI Modtool 6 format, and 2 sample DTS shapes exported from XSI 7 using the exporter for reference.

The 2 sample files that are included with the exporter are the TGE Orc rigged with a simple null based skeleton that will export and work with the default player .DSQ files, and a simple example of an animated object using XSI bones. More sample files are in the works and will be made available as they are completed.


XSI Modtool Support:

The XSI DTS exporter is fully compatible with the latest version of [ XSI Modtool ]. Modtool is lightly stripped down version of Softimage XSI 6.x that is free for non-commercial use. View the full list of Modtool Version Limitations [ here ].

The default UI of Modtool has been setup to be more first time user friendly, but you can also choose to use the stock XSI UI instead by going to the Modes menu and choosing the "XSI default (pro mode)" UI preset.

www.darkindustries.com/gg/xsi/modtool_ui.png

Basic Scene Setup:

www.darkindustries.com/gg/xsi/bounds.pngScene setup needs to be done manually until the exporter UI is completed. This involves creating a DTS shape using nulls, creating a bounds mesh, detail markers, and a mesh object with a detail size number at the end of its name. Scene setup is almost identical to the that of the Max and Maya DTS exporters.

Create two null objects named "base01" and "start01" parent them so that "base01" is the parent node and "start01" is the child node. Parent your mesh object to "start01" and then add a bounding box around your object and name it "bounds". The bounds mesh should be either at the scene root or parented to one of the nodes or mesh objects in the scene.

Bounds Axes Orientation

You must also rotate the center of your bounds so that the Z axes points up, the Y axes points forward, and X axes points to the right. Your shape should face forward in the Y axes of your bounds. (as in the image to the right)

Detail Markers

You then need to add a detail marker to the scene named "detail(x)" where (x) = the pixel size value that this detail level should be displayed. The detail maker is just a named null object that is parented to the "base01" node. You will also need to make sure your mesh objects have a detail size at the end of their name. You can then go to file menu / export and choose export DTS.

Example: simple object scene setup
Scene Root
|
+ -bounds {mesh}
|
+ -Base01 {null}
        |
       + -Start01 {null}
        |     |
        |    + -mesh2 {mesh} (detail size 2)
        |
       + -detail2 {null} (detail marker for size 2)
[ Orc player scene setup ] | [ Simple bone animation scene setup ]


Exporting Animation

www.darkindustries.com/gg/xsi/custom_parameters.pngTo export animation from your scene you must add one or more sequence markers to the root of your scene. A sequence marker is a named null object with a Custom Parameter Set that contains at minimum 2 custom parameters; an integer property named startFrame and an integer property named endFrame.

Sequence markers should be named "sequence_" followed by the name you would like to give the animation. (example: sequence_ambient)

If a sequence marker is present in the scene, on export to DTS the named animation sequences will be embeded into the DTS shape. You can optionally click the "export DSQ" button on the exporter window to export the animation(s) seperately as .DSQ files.


Quote:Note: make sure to freeze the transforms on your bounds and mesh objects before exporting. Because the exporter supports scale animation object scale is read by the exporter and as a result if there are scale transforms on the exported shape when the object is loaded as a static shape it will appear at its un-scaled state and If it is loaded as an animated shape it would shrink down to its scaled size.

This build of the XSI DTS exporter is compiled using the XSI 6.x SDK and is compatible with the 32-bit versions of XSI 6.x, 7.x and XSI Modtool version 6.x and 64-bit versions of XSI 7.x.

[ Download The Exporter (Beta 2.5) ]

#241
10/06/2009 (11:10 am)
BTW, I am noticing an issue when exporting a simple cube with a texture using the collada exporter. When the cube shows up in T3D, the material has no lighting and is dark in color. If I turn emmissive on, the texture appears as expected, however, none of the example/demo levels use emmissive and their models show up OK.

This is why I am trying to get your exporter up and running to see if there is a difference between the two.

[edited] I just discovered that you have to check the "Export XSI normals] option when doing a collada export to get the textures to show up properly. Now if I could get the DTS exporter to work :)
#242
10/06/2009 (12:34 pm)
Quote:After setting up a simple cube for export, I get "Invalid argument specified" in a red banner at the bottom of the Softimage app.

On the bottom near the left side of the Softimage window there is a button that looks like a scroll, this is the script editor. After you see the red message at the bottom click this icon to open the script editor. Copy and paste the full error message that you are getting.

I don't think there is a 64bit version of ModTool so you will need to make sure that you have the 32bit version of the exporter installed. Also make sure that you only have one of the exporters installed. Some people have coppied all of the files from the zip into their plugin directory, you should only need 2 of the 3 file, either the 32bit exporter or the 64bit exporter (not both) and the exporter utility plugin which works for both.

The other possible issue that I have seen with ModTool is that it doesnt auto create the custom parameter preset file that is used to store the exporter preferences, I have never had the problem in the full version of Softimage the solution is to manually install the the custom preferences file. Post number #114 this thread details the process.
#243
10/06/2009 (12:50 pm)
Updated Exporter and Utility

The download link in the first post has been updated with the new build of both the 32bit and 64bit versions of the exporter. You will need to replace the old DTS Utility with the new one as well as changes have been made that require both parts of the exporter to in sync.

You may need to the delete custom parameter set "ExportDtsOptions" from your scene root in any existing scenes and let the exporter create a new one during the export process. I will probably version the custom parameters in one of the new builds so that the exporter can manage that on its own, but for now its something to be aware of.

The updated features list for this build is a few posts back. As always let me know if you run into any problems and I will address then as I can.
#244
10/06/2009 (1:17 pm)
yeah if you dont delete the Customer parameter is will give you the red flag
#245
10/06/2009 (1:53 pm)
Thanks. Will grab it to try later when I have a bit more time.
Can we hope that your documentation and/or tutorials are not far behind?
#246
10/06/2009 (2:44 pm)
I looked and I did have both 32-bit and 64-bit DLL's in there. So I removed everything and took your latest you just put up and followed the instructions from the link you gave. No more Softimage error messages.

When I selected my model and picked the "Quick Setup (simple)" menu option, the bounds box was inside the model surrounding some nulls I was using to hold different parts of my mesh. After noticing this, I enlarged the bounds box and tried an export with no success.


Here is the dump file:

Exporter Report
Torque Game Engine (DTS) Exporter v0.7.0 Build 16
Setting up for full export (dts) -- turning on optimized meshes

Config file "D:TorqueTorque 3D 2009 SDK 1.0My ProjectsTest3gameartshapesBuildingBuildingViaDtsExporter.cfg" not found.

Config file "D:TorqueTorque 3D 2009 SDK 1.0My ProjectsTest3gameartshapesBuildingBuildingViaDtsExporter.cfg" not found.

Config file "D:TorqueTorque 3D 2009 SDK 1.0My ProjectsTest3gameartshapesBuildingdtsScene.cfg" not found.
First pass:  enumerate scene...

Processing Node Ladder with parent Building_Restaurant001_CAM1
Mesh "Ladder" with parent "Building_Restaurant001_CAM1" added to entry list
Processing Node Texture_Support21 with parent Ladder
Processing Node Windows1 with parent Building_Restaurant001_CAM1
Found subtree starting at Node "Windows1"

...Chopped due to size limits on the forum...

Processing Node SideWalkWalkin with parent ParkingLot
Processing Node Asphalt with parent ParkingLot
Processing Node Texture_Support15 with parent Asphalt
Processing Node Base01 with parent Building_Restaurant001_CAM1
Found subtree starting at Node "Base01"
Processing Node Start01 with parent Base01
Processing Node detail with parent Base01
Processing Node detail2 with parent Base01
Processing Node detail3 with parent Base01
No bounds foundWarnings:
Warning #101: Config file "D:TorqueTorque 3D 2009 SDK 1.0My ProjectsTest3gameartshapesBuildingdtsScene.cfg" not found. 


Errors:
Error #0:No bounds found


Explorer:
-Scene_Root
----Base01
-------detail2 (I added this)
-------Start01
----------Building_Restaurant2 (type: model)
----bounds
#247
10/06/2009 (2:55 pm)
Actually, I figured it out. When I highlighted my model, then selected the quick setup from the menu, it did not create a bounds under the model, also it looks like the structure is not correct:

Here is the structure after the Quick Setup:

-SceneRoot
---Base01
-----Start01
-------MyModel2 (type:model)
---------Awnings (type:null containing meshes)
---------Base01
-----------detail
-----------detail2
-----------detail3
-----------Start01
---------Building (type:null containing meshes)
---------Doors(type:null containing meshes)
---------OutsideLamps(type:null containing meshes)
---------ParkingLot(type:null containing meshes)
---------Windows1(type:null containing meshes)
---------bounds (type:mesh I added this)
---------Ladder (type:mesh)
---bounds


I went through and changed everything to match the initial instruction provided in this thread. I renamed all meshes with a 2 at the end. Man that is a chore with about 72 different meshes. (we need an easier way for this is the future. Maybe if the null has a 2, then all sub-meshes do not have to have a 2).

After all this, the export completes, but on import to T3D, it is an empty bound box.
#248
10/06/2009 (8:23 pm)
you have 2 problems one empty detail nodes.

and

two, your higherarchy is wrong.

If you want to contact me I will sort ya out

email:
james.dot.barnette[at]3dmotif.dot.com

MSN Messenger:
artofwar427[at]hotmail.dot.com
#249
10/06/2009 (9:09 pm)
From looking at your scene setup my guess is that you selected the model "MyModel2" when you clicked Quick Setup. That would be why the bounds is in the root and "MyModel2" is attached to the start node.

You should instead select the mesh objects and or nulls inside the model "MyModel2" and then click Quick Setup. This would have allowed the exporter transverse all of the mesh nodes and add the detail size to them.

Model containers add a namespace to all of the objects contained within them. Because of this and how the script is written, models are used to allow multiple DTS shape to be setup in one scene. All of the objects for each DTS shape should be inside their respective Model.

Models cannot be nested or the export will fail. Keep in mind that Model use is completely optional but if you do use them you have to make sure that you use them correctly.
#250
10/06/2009 (11:07 pm)
Updated Exporter Utility

I posted another update a few minutes ago that fixes a lingering issue where using "Quick Setup" and/or "Register Details" in the utility would add empty detail markers to the the DTS shape.

I updated the URL on the bottom of the first post to point to the updated version. If you have any problems or issues with the update let me know.
#251
10/07/2009 (12:35 pm)
yeah Empty details will cause you model to export but not show up in the engine.
#252
10/07/2009 (12:37 pm)
Also just a suggestion but things like doors that need to be animated and prolly have that animation called from the engine I would make in a separate DTS file.
#253
10/10/2009 (11:37 am)
Hey Matt, are you moving in the direction of using collada and figuring a way to get all the features of T3D exposed in the Crosswalk collada export?

If yes, we agree with your direction.

#254
10/14/2009 (11:31 pm)
@Matt,

Got a vehicle scene that is setup like I think it should be for exporting to DTS or Collada for that matter to T3D.

I have gotten a import that looks fine in the shape editor but crashes when trying to setup as a wheeled vehicle (posted in T3D forum, but this is XSI related as well).

Is there any changes in T3D to get properly set a DTS or Collada up to work properly?

I think it boils down to animations I think. For the springs, I am simply setting a ambient animation.. no movement and naming as sequence_spring0...

If I export the animations as DSQ and try to assign to the DTS later, it crashes T3D.

I can send you the file if you want to look as well.
#255
10/15/2009 (7:13 pm)
Figured it out....


I had a bounds issue and renamed Col-1 to Collision.


Must have been what caused the Collada and DTS to fail.
#256
10/16/2009 (3:14 pm)
@Randy: Glad to hear that you figured it out. Yeah the Bounds, Collision meshes and spring animations can all cause the Vehicle DTS shapes to crash T3d and Torque in general.

Did you get it to work with COLLADA or the Native exporter? Or both?
#257
10/16/2009 (5:25 pm)
That was actually the Collada, still having issues exporting DTS..
#258
10/16/2009 (6:05 pm)
Matt: Is there a limit to the number of polygons in a DTS object or even just in your DTS exporter?

I have a complex building that I am trying to export to a DTS. I did a simple polygon from scratch just to make sure I had the hierarchy and process down and that worked including the texture and UV that I did.

When I try to export this new model XSI crashes. This building has a ton of polygons. I did import it from an OBJ, but I told to not to import UV, textures and such just in case that was the problem. Then I did a quick setup and that worked. Then when I export XSI crashes.

Something to note....originally I purchased this object as a blender model. I also have a DTS exporter for blender and when I use that this model loose a bunch of polygons and the error given during the export is that the polygon count was exceeded. That is why I am wondering if there is some limit for DTS models.
#259
10/16/2009 (8:20 pm)
Matt: I am having trouble with textures and exporting to DTS. I created a simple plane and did a Phone.fx with Planar XZ project and a simple colored 256x256 png image. This one exports fine and when I bring it up in Torque Show Tool I can see the color of the image file just fine.

I created a new model that is the building that I am trying to make. It is more complex and made up of a cube that I extrude in different ways to get the shape I want. This is a new model and is not the one mentioned in the posting above.

So I apply a Spherical project to this one (in XSI, of course) and use the Texture Editor in XSI to move all the polygons where I want them. Then I stamped the image and openned the image in Paint and painted on it to give it some texture. I then import that into Texture Editor in XSI too see how it looks. I double check in the camera perspective with DirectX 9 selected and everything looks great.

So I export this one to DTS using your tool and the model exports fine, but when I load it into Torque Show Tool, the texture doesn't show up. I have the png file in the same folder as the dts model just like the simple plane I did above that worked fine.

What am I doing wrong?
#260
10/17/2009 (1:12 am)
The following change was made to the lastest build of the exporter regarding materials in Softimage.

  • Change: The Material name stored in the DTS is now the Softimage Material name and not the file name of the image attached to the material. This was changed to be consistent with the COLLADA pipeline for T3D. The material name should be used with the "mapTo" property in the T3D material defintion. When exporting DTS for TGE you will need to rename your Softimage materials to match your image file names.
Because of this change you will need to either rename your materials in Softimage to match your texture names or Rename your textures to match your materials in Softimage or use the "mapTo" property in your Material definition either manually or via the material manager in T3D to assign the texture to the material name that is stored in your DTS file.