This section contains descriptions of some advanced problems, explains why they occur, and if available, offers workarounds.
If none of the topics in the Troubleshooting or Limitations section help you, search the FBX Forums. The forums contain ongoing discussion about the 3ds Max FBX plug-in, as well as an e-mail address where you can contact support and alert the FBX team to your issues.
Textures disappear from files if you move or delete any textures from the relative and absolute paths of the associated media files location. This can happen when you give the FBX file to someone using a different computer who does not have that texture in that directory on your computer drive.
Use the Embed media option to make the FBX plug-in include (embed) associated media (textures, for example) within the FBX file. The plug-in then extracts the media to an .fbm folder at import. The plug-in copies the embedded media to a <fileName>.fbm folder in the same location as the FBX file and is named after the FBX file.
If you disable the Embed Media option, the FBX plug-in stores the relative and absolute paths of the associated media files at export time. This causes problems if, for some reason, the path is no longer accessible. Make sure that the associated media is accessible to ensure the proper import of these media files.
In previous versions of the 3ds Max FBX plug-in, when you saved an FBX file with the Embed Media option activated, the embedded files were extracted to a folder in the same location as the FBX file. If you did not have write permission for the folder, then the media files were not extracted. You can experience this lack of write permission when you work over a network.
With the current version of the 3ds Max FBX Plug-in, if you do not have write permission for the folder creation, the media files are sent to a temp folder instead. See Embed media.
Files lose their texture maps if you import Collada (DAE) files created in Poser. When the FBX plug-in encounters this limitation the Missing Map Files dialog box appears when you render. This is because 3ds Max cannot locate the files.
You can address this if you add the location to the External Files path list.
To keep textures visible:
The Configure User Paths dialog box appears.
When you render your file, the texture maps are shown.
For a description of this limitation, see the Missing texture maps in DAE files FBX limitation section in the FBX Limitations topic.
If you are exporting a mesh that has been used as the source in a texture map extraction (for example, if you used this model as the source to extract a displacement map), be aware that any extracted texture maps are automatically exported with your model.
This can result in unexpected deformation when you import the model into another application, as the texture maps are automatically assigned to the model on import. If you experience this issue, you can remove any unwanted texture map from the associated channel (such as the displacement or bump channel) after importing the model.
Sometimes when you export a file from Revit, the file size dramatically increases. For example, a 30 mb Revit file can become 60 mb on export to FBX.
The original Revit file size is smaller because it contains less data than an FBX file. Revit scene file information accesses much scene information from libraries that reside within the Revit software, for example, Revit-specific construction data and textures. This information that is normally read from the Revit software now must be added on top of the FBX file on export so it can be reproduced accurately by software that cannot access Revit libraries.
This over-sizing problem also occurs with 3ds Max (.max) files on export for the same reason. A .max file must contain only the instructions that 3ds Max requires to create the scene. Materials and lighting information is read directly from the 3ds Max software libraries.
On top of this, when the Revit or 3ds Max file becomes an FBX file, it is converted to complex FBX scene information based on geometric data, such as vertex coordinates, UVs, and so on. This way, the FBX file contains the actual geometric data so it can be read in any software that supports the FBX format.
File sizes also tend to grow between Revit and FBX because all material data is embedded with the FBX file. The growth in file size means FBX files must contain every Revit texture used as materials so you can later import the FBX file into 3ds Max. A Revit scene file does not need to contain any texture files because the textures reside in the Revit software, where the scene file can refer to them.
Occasionally, large files do not import properly into 3ds Max due to memory constraints. If a file contains a massive amount of metadata and geometry, the import process can take hours.
There is also a known issue that affects few users when an extremely large FBX file is imported.
If you switch the 3ds Max System (not Display,) units to feet, so they match the Revit Imperial units exported to FBX, the import process takes much less time to complete. The unit conversion process is a complicated one for the FBX Importer and takes a long time to complete. Matching the units between an FBX file and the host program is often the deciding factor whether or not a large FBX file imports successfully into 3ds Max.
For more about System Units conversion problems, see Why is my scene scaled differently in 3ds Max? later in this topic.
Geometry exported from Revit does not have a correct local pivot point or center, as is normal when you create objects in 3ds Max. Object centers are offset from the object, but have a correct position in global space. If you are not manipulating or animating the position of your objects in 3ds Max, this offset has no impact.
Objects can lose some transformation data when they have local axes that are not perpendicular to each other (non-orthogonal). This is due to a limitation. See the Non-orthogonal matrices section in the FBX Limitations topic.
Visible edges are hidden lines that are normally invisible in 3ds Max. The problem typically occurs with Revit models because everything exported from Revit is triangulated. This causes edges that 3ds Max would normally hide to become visible.
You can recognize a visible edge, for example, if you have a wall in Revit that should only be represented in 3ds Max with four edges which are the four sides of the wall. Instead, 3ds Max displays the middle triangle that connects both corner vertices. This middle triangle is normally hidden.
Use this script to hide any unwanted edges from imported models, typically Revit version 2010 and earlier models loaded in 3ds Max using FBX. The script will read all edges and determine which ones can be hidden by evaluating whether they are next to any neighboring edges. Hiding these unwanted edges makes the model much easier to view.
To use this script:
You can also save this script in 3ds Max and drag and drop the .ms file in the Viewport while objects are selected.
( -- do this in a local scope so I don't pollute the global scope. function setVisibilityEdges obj = ( local edgeSelSet = #() -- Go through all faces local numFaces = obj.numfaces for faceIndex = 1 to numFaces do ( -- And for every one of the 3 edges for edgeIndex = 1 to 3 do ( --collect the edge append edgeSelSet ( ((faceIndex-1)*3) + edgeIndex ) ) ) -- Select all visible edges meshop.autoedge obj edgeSelSet 5 type:#setclear ) --============================================== -- Start of the runtime script --============================================== local timestart = timestamp() -- turn off undo during this operation. with undo off ( local editMeshArray = #() for obj in Selection do ( if (classof obj == Editable_Mesh) do ( -- collect all the edit meshes first, because the -- user could have selected some helper objects too, which we -- don't want to process. append editMeshArray obj ) ) -- we don't need to hold the selection anymore, clear it out. clearselection() -- Array of object handles that have already had their edges hidden local allReadyProcessed = #() -- iterate through all selected edit meshes... for editMeshobj in editMeshArray do ( local found = (FindItem allReadyProcessed editMeshobj.handle) > 0 if (not found) then ( setVisibilityEdges editMeshobj append allReadyProcessed editMeshobj.handle -- Mark all the instances as processed too! InstanceMgr.GetInstances editMeshobj &repeatArray if (repeatArray.count > 0) then ( -- mark them as processed by adding their handle to the array for repeat in repeatArray do ( append allReadyProcessed repeat.handle ) ) ) ) ) redrawviews() local timeend = timestamp() format "Total time: % (seconds)\n" ((timeend - timestart)/1000.0))
If your exported Revit IES lights have incorrect tilt angles or incorrect IES Web Distributions orientation in 3ds Max, this is due to a known issue.
This problem occurs in Revit version 2011 and earlier importing to 3ds Max version 2011 and earlier. You can find a fix for this problem in Revit 2011 UR1 and 3ds Max 2011 SP1.
Click Autodesk Revit Architecture Services & Support to go to the Revit Updates page.
Click Autodesk 3ds Max Services & Support to go to the 3ds Max Updates & Service Packs page.
Performance may be slow for large projects that contain many objects and data when exporting from Revit Architecture and importing into 3ds Max.
To improve performance, limit the model geometry you export. Try using a section box or hide categories of model elements that you do not need in Revit Architecture and set an appropriate level of detail level.
If the FBX Importer does not perform unit conversion, such as switching 3ds Max to Feet, the import process is much faster. See Working with large files earlier in this topic.
Revit Architecture exports only one camera to FBX, which corresponds to the active 3D view. This means only the current Revit 3D view or camera imports into 3ds Max as a 3D camera view.
The 3ds Max FBX plug-in does not support the cropping region and optical center of Revit cameras. However, the field of view (FOV) or perspective of the Revit cameras is correct in 3ds Max. So, this does not translate precisely in 3ds Max if you modify your Revit camera by resizing and/or offsetting the cropping region (frame) of your 3D view in Revit.
This is caused by a combination of FBX not transporting the render resolution settings, and a limitation that the 3ds Max camera model does not support an optical center
Massing objects in Revit are not supported, and do not export to FBX.
In Revit, you can “hide” and “temporarily hide” elements. The 3ds Max FBX plug-in imports “temporarily hidden” objects exported from Revit. Although they exist, these elements are not visible in 3ds Max, since they are “hidden”.
“Hidden” elements in Revit do not export and do not exist when you import your FBX into 3ds Max.
Revit Groups have no 3ds Max equivalent so the 3ds Max FBX plug-in ignores all Revit Groups. For example, if you export lights within a Revit Light Group, the 3ds Max FBX plug-in converts the lights but loses any grouping.
Revit calculates system units in Imperial units (Feet and Fractional Inches). When Metric units are set as the “Project Units”, Revit dynamically converts the Imperial units into Metric units, in the UI. This means that FBX always exports in the actual system units, Imperial (Feet). There are no issues in working with Metric units in Revit and 3ds Max, but this results in an Imperial (Feet) FBX file, that automatically converts to Metric (Meters) on FBX import into 3ds Max. When you use an Imperial (Feet) Project Unit in Revit and Feet System Units in 3ds Max, no conversion is needed.
For more on Revit units, see Why is my scene scaled differently in 3ds Max? later in this topic.
Revit uses daylight portals differently from 3ds Max. They exist in both applications but because they are calculated differently when you render, 3ds Max FBX plug-in does not import these daylight portals into 3ds Max. Doing so would result in low performance. This performance issue is because Revit systematically creates daylight portals for each individual window, and for each side of the window. This does not affect the rendering performance of Revit since only windows relevant to the camera view are only calculated when you render.
However, 3ds Max renders all daylight portals systemically. Therefore, it is better to create one single daylight portal for an entire wall of windows manually in 3ds Max as you would normally when you work in 3ds Max. This results in better performance and gives better visual results.
3ds Max has two unit settings, System and Display, that can create conflicts when you try to exchange data between 3ds Max and MotionBuilder, Maya, or Revit.
If they are set differently (for example, inches and centimeters), the 3ds Max System and Display units settings do not create issues as long as you are only working within 3ds Max. However, MotionBuilder and Maya use centimeters, and Revit uses feet/meters, so conversions might occur each time an FBX file is moved between those programs.
Generally in 3ds Max, changing the System Unit Setup is discouraged as it can create confusion. But for the purposes of file exchange and interoperability, altering 3ds Max System Units is necessary as FBX files do not take 3ds Max Display units into account. Consult the following sections for a detailed explanation of the scaling problem.
Unlike 3ds Max, which uses inches as its base system unit, MotionBuilder and Maya both use centimeters. To compensate for this, 3ds Max users are generally instructed to switch their Display units to centimeters, and leave the default system units setting (inches) unchanged. This creates problems when exchanging files between other software applications.
For example, if you export a 3ds Max object when you have your Display units set to one measurement (such as centimeters), and your System Units set to another measurement, the FBX exporter only considers the 3ds Max System Units, even if they differ from the Display units.
This becomes more complex if you then save the FBX file in MotionBuilder and import it back into 3ds Max. The FBX Importer evaluates the 3ds Max System Units, but once you save the FBX file in MotionBuilder, it is converted to centimeters. The FBX Importer accordingly converts the incoming FBX file to match the 3ds Max System Units. This now scales your object even though you had no expectation of scaling because your Display units have always been in centimeters.
If you want to exchange FBX files between 3ds Max and MotionBuilder, change your System Unit settings to centimeters to match. If you want to exchange FBX files between 3ds Max and Maya, change your 3ds Max System Unit settings to match the Maya Working units.
Similar issues occur with Revit as Revit System Units are Feet/Meters and 3ds Max System Units are inches by default. If you import an FBX file from Revit that uses “Imperial: Feet” as system units into 3ds Max while the 3ds Max default units are inches, the FBX conversion scales all objects in the scene during the import process.
The Revit scale is 12.0 (or 12 inches per foot). This is because, if the scaling did not occur, your units would become one foot = one inch which would then create distortion in any bitmap used in the scene.
For example, if you do not scale objects upon import, a Revit imported house ends up with walls that are 12 inches long, instead of 12 feet long. The FBX conversion scaling is also done to ensure that bitmaps are mapped properly in size in relation to the objects in the scene. If your wall is 12 feet long, it has to be converted to 144 inches long for the bitmap used to display in an appropriate real-world scale.
If you want to exchange FBX files between 3ds Max and Revit, change your System unit settings to feet to match Revit.
If you do not want to change the 3ds Max default System Units, there is another work-around for this scaling problem; manually convert every object to real world scale after you import the file into 3ds Max. If you do this, you must have Inches set as system units, which is the 3ds Max default.
The 3ds Max FBX plug-in supports the turning of hidden edges. This support is through triangulating the affected Poly objects into Editable Mesh objects. Once the mesh is triangulated, all invisible edges are exposed and baked, whether they are turned or not.
Editable polys have hidden edges. When you view a polygon in 3ds Max, the hidden edge is invisible unless you turn on its Visibility. A hidden edge with Visibility turned on appears as a dotted line when the Turn tool is activated. This gives the impression that the Editable poly model is composed of polygons when it is composed of triangles. The only difference is that the edges that complete the triangles are normally hidden from view.
You can turn hidden edges in editable poly and mesh objects to modify the shape of the hidden triangles within your polygons. This is a refining process useful if you want to modify how polygons are subdivided. Turning the edges lets you avoid thin triangles in your polygons, for example. Turning hidden edges is a refining process some 3ds Max modelers go through as a last step.
To turn an edge in 3ds Max:
When you export this scene, hidden edge directions are retained by converting editable poly objects to editable mesh objects.
If you see faceted geometry when you import files into 3ds Max using the 3ds Max FBX plug-in, the Smoothing Groups option might have been activated. Disable this option to correctly import, for example, Revit objects into 3ds Max.
Whenever you import a Revit file using FBX, deactivate the Re-evaluate Smoothing groups option. This option is now deactivated by default in the Autodesk Architectural Preset for all future releases of the 3ds Max FBX plug-in.
The Smoothing groups re-evaluation process potentially slows down the import process, so your import process will speed up (depending upon file size) if you deactivate it. This increase in speed occurs because the importer no longer must evaluate every face in each of the geometries that already has a smoothing group associated with it and then, assigning one or more when required.
Older versions of MotionBuilder (versions 2010 and earlier) do not support Geometry Vertex Normals and can present issues with edge definition.
If you are using an earlier version of MotionBuilder and this problem occurs, you must activate the Split Per-Vertex Normals option. When you activate this option, geometry vertex normals are split based on edge continuity. Vertex normals determine the visual smoothing between polygon faces. They reflect how 3ds Max renders the polygons in smooth shaded mode.
This option only applies to older MotionBuilder workflows to ensure visual fidelity of surface continuity. It lets you transfer hard edge information to MotionBuilder.
Use this option to preserve whether edges are hard (divided) or not (continuous) when you operate between 3ds Max or Maya and MotionBuilder 2010 and earlier. If you disable this option, all smoothing groups in 3ds Max are ignored as well as all hard/soft edge information in Maya.
For example, a 3ds Max-created box that would normally have defined edges would lose them, with all faces visually connected, without visible edges dividing them, in MotionBuilder 2010 and earlier. This is result is hardly noticeable for organic objects, but is very noticeable on hard surfaces such as tables and cars, and so on.
See the Split Per-Vertex Normals section for a workflow to import FBX files exported from 3ds Max into MotionBuilder with proper edge continuity while retaining the original 3ds Max edge continuity for import back into 3ds Max.
Display layer properties are only supported by layers that are not layer 0; the 3ds Max FBX plug-in does not recognize layer 0.
For example, if you have objects in Layer 0 and Layer 1, the 3ds Max FBX plug-in ignores the Layer 0 properties but retains the layer property information for Layer 1.
There are some specific situations where the 3ds Max FBX plug-in does not export animation layers by default.
Animation that exists on multiple layers does not export correctly as the 3ds Max FBX Plug-in conditionally supports Biped animation layers.
As long as you are at the uppermost (top) layer, and use the Bake Animation option in the FBX exporter, you can export all animation from the top down on the layers that reside beneath the top layer.
If you do not activate Bake Animation, only the top layer of animation is exported. This is because the 3ds Max FBX Plug-in Bake Animation option scans through any unsupported controllers in 3ds Max and then re-samples the animation for export.
The 3ds Max FBX plug-in does not support Maya LOD attributes, due to incompatibility with 3ds Max LOD attributes. See the Maya LOD attributes section in the FBX Limitations topic for more information about this limitation.
If you import an FBX file that contains Smoothing group data into 3ds Max with the Smoothing groups option activated the FBX importer will import only the smoothing group data and ignore any modifications made to the normals. For example, this would happen if you modified the normal directions, but the object also had smoothing group information.
This is due to a limitation, see the Explicit normals and Smoothing Groups FBX Import limitations section in the FBX Limitations topic for more.
If you are missing keyframes at the end of your animation in an exported FBX file, they may have been cleaned by the 3ds Max FBX plug-in Constant Key Reducer filter. When this filter is enabled, the plug-in removes any consecutive keys that have the same value.
For example, if you set five consecutive keys of the same value at frame 10, 12, 15, 20, and 24, the constant key reducer filter will remove all the redundant keys except the one at frame 10.
During import, the plug-in may resample some animation curves. If this resampling occurs, the 3ds Max FBX plug-in automatically applies the Constant Key Reducer filter to reduce the amount of keys allocated in memory.
The 3ds Max FBX plug-in display layer support is not shown anywhere in the FBX Plug-in interface because the plug-in does not need user input to execute this process. This is because the plug-in assumes if there are display layers included with the file, they are needed. There are no scripting options to disable the FBX layer support.
If you still want to export without the display layers being considered by the FBX plug-in, you must collapse the layers in the 3ds Max scene.
To collapse 3ds Max layers:
This example is for a scene with multiple objects and layers, such as 3 objects with 3 layers (one object in each).