1       Introduction

2       DTS Mesh Creation

3       DIF Brush Creation

4       DTS Collision

5       DIF Collision

6       DTS Rendering Capability

7       DIF Rendering Capability

8       Summary





DTS and DIF files are considerably diferent.  Once you understand the pros and cons of each format, making a decision about what is best to use is quite easy.  You must take several factors into consideration before you begin: collision routine, rendering capability, overall performance, tools used to develop, etc.



DTS Mesh Creation

When creating a model in 3D content generation application, such as Maya or Max, you have a lot more flexibility in terms of how you create the shape.  They can essentially be any shape or size.  The DTS format also supports concave and convex meshes.



DIF Brush Creation

A DIF file must always conform to convex shapes.  For instance, when creating an interior in Constructor, you will not be able to leave any shape "open," use varying mass, or create varying surfaces.  You are basically limited to creating surfaces that contain angles no smaller than 180 degrees.



DTS Collision

DTS can support multiple collision routines: line to polygon, polygon to polygon, etc.  The drawback happens when your DTS shape is wildly complex (having 20,000 polygons for instance).  Having dozens of these massively complex shapes in your scene will result in performance hits.



DIF Collision

When it comes to collision, Torque has separate calculation and response systems when handling the formats.  A DIF model will always have its collision tested using BSP: Binary Space Partitioning.  What this means is that the interior scene will be subdivided recursively into convex sets, and then stored in a BSP tree.  Torque will parse this BSP tree to check for collision between objects in scope of a DIF's tree varying tree nodes.



DTS Rendering Capability

Torque even has entirely separate rendering systems for each format.  DTS models can supports static and animated shapes, allow for mounting of one shape to another, and have their meshes manipulated via source code calls.  This is obviously the format you want to use for avatars, vehicles, and any other object that needs more interactivity and "flash."



DIF Rendering Capability

Quite the opposite of DTS files, DIFs are static objects that lack any modification once placed.  While you cannot mount objects to a DIF, you are able to "burn" DTS shapes into a DIF model in Constructor.  What this means is that you can create a building in Constructor, then load in DTS shapes (chairs, tables, etc) that will be saved and exported with the DIF.  When you load the interior in Torque, the DTS will retain their orientation. 


To prevent rendering surfaces/brushes that a player cannot see, DIF objects use "Portals" to cull out any rendering that the user is not in scope of. 


You create a building in Constructor.  It contains two rooms connected by a doorway, one of which contains a door to the outside world.  If you place portals on each of the openings (doorway and exit), you will have a properly configured DIF model.




Both file formats have pros and cons.  You will want to decide during the design and asset creation phase which will best for you.  You always have ways of getting around the negatives, though.  3rd party tools, integration of new collision systems (Polysoup), and other options are still at your fingertips to diversify your asset choices.