lightbulb Blender DIF Export Plugin

  • RandomityGuy
  • RandomityGuy's Avatar Topic Author
  • Offline
  • Administrator
  • Administrator
  • This entire place is bruh
  • Posts: 294
  • Thank you received: 91
04 Dec 2024 20:12 - 04 Dec 2024 20:14 #1
io_dif
This is a Blender plugin to import and export MBG Torque DIF interiors and Torque Constructor CSX files. Supported Blender Versions: 2.8.0 to 4.3

Usage:
Import
File > Import > Torque (.dif).
It can't be any more simpler than that.

If you want to load a Torque Constructor (.csx) file and create a Torque DIF, use File > Import > Torque Constructor (.csx).

Export
File > Export > Torque (.dif)

Additional export options - Important!
  • Flip Faces: Flip the normals of the dif, in case the resultant DIF is inside out.
  • Double Faces: Make all the faces double sided, may increase lag during collision detection.
  • Max Polygons: Number of maximum triangles that a DIF can have before splitting into multiple DIFs. Reduce this number if export fails.
  • Apply Modifiers: Whether to apply modifiers to meshes before exporting.
  • Export Visible: Export only visible geometry.
  • Export Selected: Export only selected geometry.
  • Use Material Names: Use Material Names instead of file names of the material textures.
  • Optimize For Marble Blast: Make the resultant DIF optimized for Marble Blast. Uncheck this if you want to use this for other Torque games.
  • BSP Algorithm:
    • Fast (Default): Use a sampling algorithm to determine the best splitter. This method is inherently random and may not always yield optimal results.
    • Exhaustive: Use an exhaustive search algorithm to determine the best splitter. May take longer but builds more balanced trees. Deterministic algorithm.
    • None: Do not build a BSP Tree, utilize this for fast conversion times or if building the BSP Tree fails/hangs on export.
    • IMPORTANT: If your geometry is too complex, consider using None mode as there is no guarantee that a BSP Tree can be optimally built within set constraints.
    • IMPORTANT: BSP Trees are only used for raycasts and Drop To Ground feature in Marble Blast. If you are not using these features, you can safely disable the BSP Tree.
  • Point Epsilon: The minimum distance between two points to be considered different.
  • Plane Epsilon: Minimum difference between values of two plane to be considered equal.
  • Split Epsilon: Minimum difference between values of two splitting planes to be considered equal.
DIF Properties Panel
Located in the object properties panel
  • Interior Entity Type:
    • InteriorResource: normal static interior type
    • PathedInterior: moving platform type interior
      • Marker Path: a curve object that describes the path of the moving platform
        • initialPathPosition: set using the "Evaluation Time" parameter located in Curve > Object Data Properties > Path Animation
        • totalPathTime: time it takes for the moving platform to complete the path, set using the "Frames" parameter located in Curve > Object Data Properties > Path Animation.
    • Game Entity: represents an entity in the DIF such as items
      • Game Class: the class of the entity such as "Item", "StaticShape",etc
      • Datablock: the datablock of the item.
      • Properties: a list of additional key value pairs which will be set to the object on Create Subs
Limitations
  • No Trigger support: I tried but Torque was being Torque even when I successfully embedded them into DIFs.
  • No Game Entity rotation support: there isn't even a rotation field for Game Entities in DIFs, and torque doesn't even use the rotation field explicitly passed as a property
 Previews



Download
Current Version: 1.3.0

Github:
github.com/RandomityGuy
Feel free to support me at ko-fi.com/randomityguy
Last edit: 04 Dec 2024 20:14 by RandomityGuy.
The following user(s) said Thank You: Weather, Go'way

Please Log in or Create an account to join the conversation.

Moderators: Doomblah
Time to create page: 0.726 seconds