Collada plugin for After Effects

More info here
Plugins and Scripts > trueSpace > Import/Export

Unreal4 Import Export for trueSpace7.61

Set of scripts for working with Unreal game engine file formats. Imports and Exports T3D format files. Works with UE1 through UE5.

persistent base install required

Clintons3dPlugin.rsx is required.

JSON function set required for csg brush import. full install required for automatic boolean operations

Reset the Default Context if any toolbars have been modified before installing.

t3d import panel

T3D Import:

  • Scale - import scale applied, default 0.02 matches DeusEx maps
  • Clear scene - empty items from the scene, required for first run of ue1/deus ex csg map
  • Texture check - check for missing texture files for csg geometry(brushes) of type .png or .dds and list them in the Log view. Press (esc) to end a long run. Choose the T3D file below before running the check
  • After crash - run after a crash or an (esc) cancel/abort and before pressing Import T3D again to continue
  • UE4 map - t3d file was exported from Unreal Engine version 4 or 5
  • Brushes - import csg brush geometry
  • Static mesh - imports placeholders for static meshes and interpActors in the form of cubes
  • Skeletal mesh - imports placeholders
  • Lights - include lights
  • Cameras - include cameras
  • KActors - import placeholders for level kactors
  • Mover brushes - import mover geometry
  • Volumes - import special volume brushes
  • Preload Brush Materials - import material texture files before importing brush csg geometry
  • "..." - press button to choose the T3D file
  • Import T3D - press buttons to start the import
  • Copy Brush Materials - apply the preloaded materials to csg imported geometry brushes and movers
t3d export panel

T3D Export:

  • Scale - export scale applied(100.0)
  • export filename - nothing
  • Only export selected - check to export only the selected objects
  • Export T3D - press to save a UE4 compatible T3D map file
  • note the time should be at frame zero or the start point for any animations may be off
t3d lights

T3D Lights - set the attenuation of all lights in the scene to prevent blowout levels of illumination.

  • Constant -
  • Linear -
  • Quadratic -
  • Threshold -
  • Apply attenuation button -
t3d mesh tag

T3D MarkMesh - assign tags to identify static and skeletal meshes and terrains for the T3D exporter, landscapes use the terrain tag

  • Package - package name for mesh in the UDK object browser
  • Group - group name of the mesh in the UDK object browser - test shows this value doesn't seem to matter, only package name is needed for matching up assets. For UE4 do use this to use preexisting meshes. for example set group to Character on a skeletal mesh named HeroTPP to end up with a full name of "/Game/Character/HeroTPP.HeroTPP"
  • StaticMesh Name - name of the mesh inside the Unreal object browser
  • Apply Static Tag - assign the staticmesh name to the node
  • Skeletal Mesh Name - name of the mesh inside the Unreal object browser
  • Apply Skeletal Tag - assign the skeletal mesh name to the node
  • MaxComponentSize - 4 typical value
  • NumPatchesX - set equal to num segments Width from original plane
  • NumPatchesY - set equal to num segments Height from original plane
  • Apply Terrain Tag - interprete as a terrain on export
  • Particle System Name - name of the particle system inside the Unreal browser
  • Apply Particle Tag - interprete as an Unreal particle system
  • Load Default Unreal Material - loads the light and dark gray checker texture into the material editor so it can be assigned to csg geometry
unreal utilitespanel

Utilities tools for show, hide, materials and the fbx utilities panel

  • Show Store Items - select the group or individual items found in the various stores: lights, brushes etc. and press to make them visible
  • Hide Store Items - select the group or individual items found in the various stores: lights, brushes etc. and press to make them invisible
  • Load Default Unreal Material - loads the light and dark gray checker texture into the material editor so it can be assigned to csg geometry
  • Load World Space Material loads a world space checker texture into the material editor so it can be assigned to csg geometry
  • Purple Transparent - convert DeusEx purple material to transparent
  • Open T3D FBX Utilities(see below):
unreal tsx path


  • MoveSpeed - make faster for larger scene navigation, slower for finer control
  • RotateSpeed - adjust for a comfortable rotation speed
  • Convert View Widget - changes the view widget walk control so it follows the Unreal Editor style of navigation
    • RMB - look around from eye position,
    • LMB - move with yaw is less sensitive to turning,
    • LMB + RMB - move up and down ( tS just RMB )
    • MMB (no change) - rotates around selection, or scene origin if nothing selected
    This change will revert after a reset default context
  • Flatten Booleans - run boolean flatten operation for each csg brush imported
  • Rest Frequency - how many minutes to run before "resting". Prevents tS crashes.
  • Skip Textures - do not load brush textures - enable preview without texture materials and may be required if no textures are in the level csg geometry
  • Auto Booleans - use AutoIt active-x control to run the custom boolean tool
    Auto Boolean Delay - wait between automatic mouse clicks in ms
  • Backup Period - the time period in minutes between backups
  • Fast Boolean options below are no longer required for decent import performance
  • Fast Booleans - restart the boolean process fresh when the number of materials is greater than Max materials, import can take several hours without this option enabled
  • Max materials - the number of materials a mesh will allow before starting a new mesh - names will be "GSL, xxx". A coresponding collection of T3DSS(t3d subtract store) will also be created.
  • Add Brushes - diagnosis tool creates a collection of all the csg add brushes
  • Save On Max - when max materials for the current csg geometry is reached, backup save the scene
  • Use Preferences Lights load lights from Preferences, this will give UU style lights otherwise simpler light structures are created to save resources.
  • Collada Friendly Names - change all ", #"(comma space hash) to "_" so the names are more compatible with the enhanced collada exporter
  • Boolean fail recovery - will clean the data and nodes for a continued run instead of saving the failed geometry in the failedCSGStore for later processing.
    This was originally created because of multiple failure events, now it is not needed as the only failures are the expected ones from flat geometry facing away from the view.
t3d fbx utilites

T3D FBX Utilities

  • Infinite to Directional - convert imported infinite light to a directional light so shadows display
  • StaticMesh and SkeletalMesh - color and tag options
    • Process tags set smGroup, smPackage, smSkeletalMesh and smStaticMesh tags
    • Replace color ue4 fbx imports as black, set color to make shapes readable
    • Use Texture will replace the color with a world space gray checker texture
    • smGroup, smPackage, smSkeletalMesh and smStaticMesh text for skeletal and static mesh tags - smSkeletalMesh and smStaticMesh can be left blank for automatic naming based on the mesh
  • Process StaticMeshes/Process SkeletalMeshes - changes color and tags for selected imported FBX meshes
  • FBX source group group of fbx meshes used with t3d placeholders
  • T3D destination group group of t3d mesh placeholders for the fbx meshes
  • Copy FBX meshes copies each fbx mesh from the fbx source group to the location of the t3d files in the t3d group
  • Rename Branch No Anim renames all the childen with a prefix "NoAnimation_" to prevent ue4 from reading the animation on that branch
  • Rename Branch Yes Anim removes the "NoAnimation_" prefix from the names

A sample video on how to install an rsx plugin for truespace can be found here. The video is for installing the Indigo Renderer, but it uses the same rsx plugin.

Installs a button to open the importer/exporter in the panel view. This script comes in 2 parts. There is the script itself and a rsx plugin for reading and writing the binary PSK and PSA file formats. The script installs with the push of a button, the plugin requires manual installation.

Some old installation and usage notes can be found at this link. - used to view and extract assets from the Unreal packages.


  • preload the texture materials
  • import t3d map to truespace - using fast boolean option(import in 1 hour instead of 10 hours)
  • copy brush materials
  • import lwo models to blender using custom script
  • import lwo animation model frames to blender
  • create morph targets for animation
  • use to copy morphs into tS
  • use script to export animation texture for custom vertex shader in game engine

Fast Booleans

Fast Booleans no longer has any speed or stability advantages over more direct means.

you tube here
Old version: supports ue3 T3D, PSK and PSA

t3d import to truespace from ue4/ue5

  • export t3d scene from ue4 and import to tS, scale 0.01
  • static mesh placeholders will be saved to the "t3dStaticMeshStore" 2D group
  • export static meshes from the content browser as fbx without collision meshes. if more than 1 is exported a folder structure matching the content browser will be created
  • import fbx static meshes - "Add 180 Yaw Mesh" option checked, scale 0.01
  • t3dfbx import export utility - set checkboxes
    • process tags
    • replaceColor - unless the static mesh has a plain color
    • use texture - if static mesh has a texture assigned inside unreal
  • select all static meshes and press "Process StaticMeshes"
  • 2D encaps/group the fbx meshes
  • set fbx source, set t3d destination(t3dStaticMeshStore) to their group nodes
  • press "copy fbx meshes" button
  • delete fbx encaps and delete t3d encaps
  • final result is scene the matches the ue4 level

Utility Notes:

  • use naming in ts to control animating parts in ue4 - skeletal mesh animation
  • use only part of a skeletons animation in ue4 by renaming joints - does not work with root joint
  • cameras and lights will not do full round trip between tS and ue4


  • Semi transparent display and blank or grid ground loks best during bsp brush map import
  • After brush import and cleanup correct any mesh errors and break apart into meaningful indivisual meshes.
  • Brush import booleans won't work with flat meshes facing away from the camera. These meshes will be found in the failedCSGStore group.
  • UDK example map has flattened textures that are used to create simplified materials
    ue viewer tool will export udk and ut2k4 material info into ".mat" files which list the texture files for diffuse, normal and specular maps. Maybe add this later...
  • ut2k4 was the beginning of the transistion away from bsp maps to staticmesh based maps.
  • Could not test ut3 export since all the assets are locked down.
  • UE5 example map has no bsp meshes, export SM_... by selecting them in the browser, rmb asset actions, bulk export, no collision, export all
    Import fbx files to tS matching the t3d import: 0.01 scale, no materials, fix yaw 180.
    t3dfbx utilities all checked, select all SM and process
    move t3d light to good position
    2d encaps fbx meshes, do materials/textures
    copy the fbx to the staticmesh placeholders, then remove the placeholders
  • dds files exported from ut2k4 do not load into tS
  • umodel will export as actorx or gltf files, import gltf to blender and just drag in the flattened texture file to the shader editor
  • The computer cannot be used while importing a brush based level.
  • After import the field of view of the viewport will increase to a value of 1.2
  • Because of the long load times for old bsp levels, use the texture check to verify that all texture files are ready before commiting to a long run.
  • Skip Textures will give the fastest preview for the level. A "fast" preview with textures can be created by using the fast boolean option combined with a small max texture value.
  • Skip Textures if the level bsp has no textures or no textures are desired.
  • Import materials and brushes first when importing unreal engine 1 csg maps so the scene is clean for the auto booleans
  • Auto booleans may not work well if the scene does not start out empty. Existing visible items may interfere with th boolean operations.
  • Clear scene is required for clean csg map booleans
  • The preview of the running process looks better when the ground is blank or wireframe.
  • Run trueSpace in compatibility mode for maximum stability
  • T3D Import Fast Booleans runs 10 times faster on a medium sized DeusEx map. It takes about 1 hour instead of more than 12 hours.
    It limits the number of materials per mesh. A large number of materials can be difficult to manage in tS.
    Fast booleans requires much more cleanup(hours of work). Subraction brushes are saved as red wireframes to help with this process.
    The map will be created as "GiantSubLevel" and 1 or more "GSL, x" meshes and corresponding "T3DSS" subtract mesh collections.
  • Brush map import run time for the DeusEx Hong Kong level is about 51 minutes
    • No fast booleans - 15.75hr
    • Fast bool, max materials 95 - 5hr
    • Fast bool, max materials 64 - 3.5hr
    • Fast bool, max materials 48 - 2.75hr
    • Fast bool, max materials 31 - 1.5hr

    This is a heavy csg level. Newer Unreal Editors do not use brushes as the primary means of level creation. A medium size UE1/UE2/Deus Ex level takes about an hour to load. Most old game levels are medium to large .

  • A backup of the scene brushes is saved at regular intervals to aid in crash recovery.
    The Save on Max will save every time the number of materials reaches the threshold. This can be used to save more often for a problem import.(old technique used when scene was saved after a number of brushes where loaded)
  • T3D Import Auto Booleans uses to left and right click in the middle of the 3d view in order to run the custom boolean tool.
    If not installed each csg brush will need to manually left then right click
  • Every 5 minutes tS will pause after the boolean operation for 1 minute - this rest period stops tS from crashing at semi-regular intervals
  • Brushes with 3 or 4 vertices will import as stand alone meshes to help reduce material counts
  • Some UV maps will need adjusting.
  • If crashing try reducing the the Rest Frequency
  • Truespace to UE4 notes/tutorial
  • DeusEx to WebXR notes
  • sometime between v4.13 and 4.26 the t3d import workaround no longer works - no way to import t3d to latest UE4 and upcoming UE5
  • to import t3d to ue4 and ue5, open the t3d file in a text editor and copy all and paste into the unreal editor.
  • ue4/5 will work with csg geometry but will not import ue1/2/3 format t3d maps properly(maybe ue3, not tested)
  • t3d import has been "removed" from ue4 v4.13.0 due to hard crashes
  • Click this line for some old information.
  • The plugin package v.1638404 or higher (March 23, 2014 plugin file date) is required to use this script. Download the plugin package here.
  • Note that the rsx plugins on this site require the VC++ runtime 2008 sp1 from Microsoft. (2010) Get it if the rsx plugin does not install.
  • t3d import names the inner mesh node to match the ue4 content browser name for the object
  • t3d import at scale 0.01, export at scale 100, import 0.02 scale for Deus Ex maps
  • ue4 t3d import level goes black - save level fixes it
  • static mesh must have both smStaticMesh tag and smPackage tag for t3d export
  • fbx scene import is easier than t3d scene import
  • t3d is good for adding preexisting static and skeletal meshes to a ue4 level
  • t3d should also be good for heavy scene instancing
  • t3d import was completely removed sometime between ue4.13 and ue4.27
  • must install AutoIt to use auto boolean otherwise spend hours left and right clicking
  • crash recovery - load backup file saved in the same folder as the t3d import file and press After Crash to cleanup some nodes and script values.
    only answer yes to clear the last node in the scene if it is a brush, answer no if it is a subtract brush store.
  • use deus ex tools to export static and animated meshes, custom lwo importer for blender to read them and odcopypaste to get the animated models as morph targets into tS
    custom lwo importer
  • the imported t3d objects are placed into layers
    • no csg brush 2
    • "flat" brushes 3
    • csg subtract 4
    • lights 5
    • mover brush 6
    • static meshes 7
    • skeletal meshes 8
    • csg add 9
  • failed csg operations will make the problem mesh invisible and save it to a failCSGStore group
    last test (Oct 2022) resulted in several empty nodes...mystery - solved was a tS bug and failed csg has been greatly reduced
  • fast booleans option creates larger scene file sizes

Idea: combine high speed preview import with fast booleans and somehow transfer the materials from the GSL meshes to the untextured level mesh. If possible can reduce time from 15 hours down to about 3 hours or less.

Final result of idea - 3 step import for csg brushes:
1. read texture files first
2. load level but use simple unique color materials instead of the final texture material
3. copy the texture materials to the level geometry
Total time less than 1 hr for a single piece import, before was 15 hr, and with multiple piece import 1.5 hr with too much cleanup to do
Results are good but still not perfect due to the weird technique used to build the level via interactive boolean tools.

October 27, 2022

  • brush import will work with textures exported from ut2k4 and udk using the XXX tool(need link and name)
  • doubled the size of csg map container - found that one test map was slightly bigger than the bounds
  • fixed ut2k4 staticmesh placeholder import - mostly good but some rotation issues
  • fixed mystery disappearing failed csg meshes - bug in tS, Node.Move command creates empty copies
  • cleaner bsp map texture check
  • failed csg solved - view needed to be closer to be sure to select the mesh for the boolean operation, all fails are expected now and caused by flat mesh facing away from the view
  • set wide fov after import to more closly match the unreal editor
  • autobool make slightly more reliable, defalt delay increase 250->500, rest freq 7->5
  • new speed controls for the UE style view navigation
  • new auto recover option for failed booleans(not needed, actual problem solved)
  • bug fix - works with csg levels that begin with add brushes

October 25, 2022

  • new fast import technique 15hr run down to 1hr
  • fixed light attenuation for UU lights
  • new default to old style lights - fewer nodes per light
  • removed tsx path creation - not used
  • now requires JSON function set
  • fixed use light prefs checkbox
  • changed timings to match higher rate of import

June 23, 2022

  • stable run now possible by adding a truePause of 1 minute every 15 min after boolean operations widget
  • the stable crash free run makes several options obsolete
  • moved fast boolean option to back tab and turned off by default
  • flatten boolean moved to back tab and turned on by default
  • removed fbx batch export - is already in the fbx scripts
  • new progress indicator for csg brush load
  • new utilities tab
  • re-added purple material button
  • new world centered material option
  • lights option to load from preferences - makes UU compatible lights
  • brush autosave based on time instead of brush count

June 17, 2022

  • reads t3d brush uv values instead of using a cube projection approximation
  • meshes of failed boolean operations are set to invisible to prevent interfering with later booleans
  • meshes built with central origin point will boolean more cleanly - also true for Blender
  • fixed various bugs
  • increased material max from 15 to 31
  • t3d fbx util add option to replace color with checker shader
  • removed yaw -90 button
  • removed set purple alpha button
  • removed old fix cam and light button
  • removed make fake cam or light button
  • removed Fix staticmesh transforms button, fixed in fbx importer
  • has installer button

November 26, 2021

  • fix bug in renaming script - collada friendly

November 17, 2021

  • collada friendly name conversion

November 3, 2021

  • after crash hide GSLs, subtract and add meshes and floating/free meshes
  • new max material option - default of 15
  • add brush store - for debugging - not needed, off by default
  • new flat mesh store for 3 and 4 sided meshes
  • layer assignment for brushes, csg brushes, mover brushes, lights, static and skeletal meshes and flat brushes
  • new save on max option to help with unstable crash recovery

November 1, 2021

  • added small scale to all brushes for better booleans in most cases - less cleanup work

October 29, 2021

  • fix crash caused by too many status line updates
  • added new fast booleans option so import of csg map does not take literally all day long, includes subtraction brushes for geometry fixes
  • reduced the number of backup saves which are used to recover from crashes

October 27, 2021

  • custom t3d boolean widget was missing from the installer

October 25, 2021

  • import brush csg textures
  • booleans work with textures
  • list missing brush textures
  • read material flags for transparent and constant shaders
  • new installer

August 27, 2018

  • new t3d fbx utilities
  • import directional light instead of infinite light
  • name t3d placeholder mesh for skeletal mesh (staticmesh already had it)
  • ue4 4.16 changed actor class format - fixed, but direct skeletal mesh references no longer exported by ue4
  • removed code that adds a pivot to csg geometry and volumes
  • added spotlight angle
  • added camera import
  • set spotlight cone angle export to half value to match ue4 import
  • persistent install

May 29 2016:

  • unknown changes
  • fixes for latest ue4?

April 24 2016:

  • unknown changes
  • removed support for Unreal Engines less than version 4
  • removed PSK/PSA import export
  • removed unreal grid

April 2 2015:

  • fixed static mesh scale for ue4
  • mark mesh works with multiple selections
  • add particle system placeholder export, marker also added
  • export scene check box
  • improved t3d uv (not random anymore) using solidsnake ase to t3d code -
  • fixed/finalized the skeletal mesh rotation for the t3d files
  • batch process for the fbx exporter

February 14 2015:

  • t3d ue4 export
  • landscape for ue4 / terrain for udk
  • skeleton mesh orientation in t3d corrects for fbx import orientation

December 7 2014: - t3d export reads the skeleton root instead of the actor position

April 12 2014:

  • t3d export removed extraneous "..." file button
  • t3d export point and spot lights as movable if animated
  • t3d export spotlight angle
  • set material name from the tag panel

March 23 2014:

  • do not export invisible items to t3d map file
  • import psk to standard skeleton, no export or animation import/export yet
  • support boolean subtraction for csg export to t3d format

Sept 10 2013: - option to save entire scene or selection

May 26, 2013:

  • combined T3D import and PSK/PSA import export into one UI
  • T3D imports InterpActors
  • T3D force uv set 1 for meshes - fixes bug when cubic uv projector was set to uv set 2 only
  • added T3D exporter
  • mesh tags for T3D static and skeletal mesh export
  • added Unreal Grid
  • terrain export

Jan 27, 2013:

  • fixed X-axis mirror problem
  • psk import random colors for multimaterial meshes
  • unique button guid
  • automatic script portion installer - rsx still manual install
January 04, 2010
June 5, 2013