Search Unity

  1. Good news ✨ We have more Unite Now videos available for you to watch on-demand! Come check them out and ask our experts any questions!
    Dismiss Notice
  2. Ever participated in one our Game Jams? Want pointers on your project? Our Evangelists will be available on Friday to give feedback. Come share your games with us!
    Dismiss Notice

New FBX Exporter in 2017.2

Discussion in 'External Tools Previews' started by ans_unity, Oct 12, 2017.

  1. ans_unity

    ans_unity

    Unity Technologies

    Joined:
    Oct 12, 2017
    Posts:
    115
    Hi everyone,

    We would love to have your feedback on our new FBX Exporter. The Unity FBX Exporter package makes it smooth and easy to send geometry from Unity 2017.2 or later to any application that supports FBX and back again with minimal effort. We think this is going to be a super useful add on to your production flow.

    The FBX Exporter package includes the following features:

    ● FBX Exporter: Exports geometry as FBX files.
    ● Convert To Linked Prefab Instance: Converts a GameObject hierarchy to a Linked Prefab: a Prefab configured for auto-updating that is linked to a FBX Model.
    ● FBX Prefab Component: to handle non-destructively merging changes back into your Prefab whenever the FBX Model changes on disk.
    ● Unity Integration for Maya & 3DsMax: All softwares using FXB are supported but we have simplified the workflow for Maya and 3DsMax to a single button clic! Import and export assets between Unity, Maya and 3DsMax with minimal effort.

    See the video below for a quick introduction:


    Documentation: https://oc.unity3d.com/index.php/s/ftB4UYNeD0WNoV3
    You can download the package from the Asset Store: http://u3d.as/XWD

    Please let us know what you think!
     
    Last edited: Nov 16, 2017
    Griz, Quique-Martinez, vkovec and 2 others like this.
  2. Thomas-Pasieka

    Thomas-Pasieka

    Moderator

    Joined:
    Sep 19, 2005
    Posts:
    2,116
    Hey there,

    So I installed the plugin. However, I do not get any installed Maya versions displayed in the Settings. I have Maya LT 2018 installed. So then I tried to do it manually but no luck either. What am I missing here?

    Thomas


    2017-10-12_10h51_49.jpg
     
  3. imgspc

    imgspc

    Unity Developer - FBX Exporter

    Joined:
    Aug 22, 2017
    Posts:
    13
    Currently, we only support the regular version of Maya. We are working on adding supporting Maya LT.
     
    Teila likes this.
  4. Thomas-Pasieka

    Thomas-Pasieka

    Moderator

    Joined:
    Sep 19, 2005
    Posts:
    2,116
    When can we expect LT to be supported? What time frame are we looking at?
     
    hippocoder and Gametyme like this.
  5. TheoKain

    TheoKain

    Joined:
    Nov 20, 2016
    Posts:
    14
    I have exactly the same problem as Thomas plus a bunch of errors in the console everytime I interact with FBX Export Settings window like moving my mouse into and out of that window area or checking and unchecking options. The errors are below, and I'm using Maya 2018 and Unity 2017.2.0f3

    --------------------------------------------------------------------------------------------------------------

    Unexpected top level layout group! Missing GUILayout.EndScrollView/EndVertical/EndHorizontal?
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr)

    GUI Error: You are pushing more GUIClips than you are popping. Make sure they are balanced)
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr)

    ArgumentOutOfRangeException: Argument is out of range.
    Parameter name: index
    System.Collections.Generic.List`1[System.String].RemoveAt (Int32 index) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/List.cs:538)
    FbxExporters.EditorTools.ExportSettings.GetMayaOptions ()
    FbxExporters.EditorTools.ExportSettingsEditor.OnInspectorGUI ()
    UnityEditor.InspectorWindow.DrawEditor (UnityEditor.Editor[] editors, Int32 editorIndex, Boolean rebuildOptimizedGUIBlock, System.Boolean& showImportedObjectBarNext, UnityEngine.Rect& importedObjectBarRect) (at C:/buildslave/unity/build/Editor/Mono/Inspector/InspectorWindow.cs:1240)
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr)
     
  6. gurayg

    gurayg

    Joined:
    Nov 28, 2013
    Posts:
    232
    Hi there,
    Is this going to be a Autodesk softwares only workflow or can we expect it to work with other softwares in future? I'm particularly interested in Blender.
    Does any of the FBX exporter features work at runtime? or is this editor only ?
     
    tufeixp likes this.
  7. imgspc

    imgspc

    Unity Developer - FBX Exporter

    Joined:
    Aug 22, 2017
    Posts:
    13
    We're investigating the issue and we'll let you know when we have a resolution.

     
  8. imgspc

    imgspc

    Unity Developer - FBX Exporter

    Joined:
    Aug 22, 2017
    Posts:
    13
    The Unity FBX exporter package will work with Blender's existing FBX import/export scripts. We're looking giving you some Blender love but after we've done with Autodesk DCCs.

    The FBX exporter features are available in editor only so, no runtime support.


     
  9. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    1,734
    Plus One for Maya LT support !
     
    Teila, Thomas-Pasieka and Gametyme like this.
  10. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    1,734
    BTW. even without Maya LT support, can we still export mesh.asset into FBX file? So I can try load it manually from Maya LT? I need this feature so I can export procedurally generated Unity mesh into FBX file.
     
  11. imgspc

    imgspc

    Unity Developer - FBX Exporter

    Joined:
    Aug 22, 2017
    Posts:
    13
    Yes, with the FBX Exporter Package you can Export Model as FBX from Unity.

    The Maya integration adds the single click import & export to the Maya File menu. If you have Maya LT just use the native import FBX; for now ;)
     
  12. dave-rose

    dave-rose

    Joined:
    Sep 3, 2015
    Posts:
    1
    HI, im also having problems with the plugin. When I export from Maya 2018 I get this:

    # Error: RuntimeError: file <string> line 2: TypeError: file C:\Program Files\Autodesk\Maya2018\bin\python27.zip\ntpath.py line 115: object of type 'int' has no len() #

    Can anyone help me out?
     
  13. markvi

    markvi

    Unity Technologies

    Joined:
    Oct 31, 2016
    Posts:
    58
    Can you get us a stack trace, please:
    - open the script editor (Windows | General Editors | Script Editor)
    - from the script editor's menu bar, turn on stack trace (History | Show Stack Trace)

    Now you should get a much longer error message. Please copy & paste all of it in this thread.
     
  14. Tinovdk

    Tinovdk

    Joined:
    Nov 28, 2013
    Posts:
    81
    When I heard of this plugin I was excited to start using it. The plugin seems to work fine on my local machine but when sharing an FBX with at least 2 other computers via Perforce it gives us this error:

    ImportFBX Errors:
    Couldn't import file D:/Perforce Projects/Shopkeeper/Unity/Assets/Art/Models/Furniture/Anvil/Anvil.fbx.
    File is corrupted (or invalid)

    These were generally the steps I took:
    I have downloaded the FBX Exporter from the Asset Store and imported everything except the integrations folder. After importing I created a cube and exported the model to an FBX. I opened this FBX with Autodesk 3ds Max 2016. In 3ds Max I removed the cube and built a new model. This model I exported to Anvil.fbx and it shows up just fine. After some changes in the import settings I committed the model using Perforce. After committing the file gives the error above on my colleagues computer and my home computer. It's worth noting that when transferring the file with a USB stick it works just fine on at least 1 computer.

    I hope this plugin goes on to support more Autodesk software and continues to improve workflows and pipelines.
     
  15. ans_unity

    ans_unity

    Unity Technologies

    Joined:
    Oct 12, 2017
    Posts:
    115
    We are currently working on Unity Integration for 3Ds Max, Maya LT and Blender. Stay tuned these will be available soon!
     
    JakubSmaga likes this.
  16. Binary42

    Binary42

    Joined:
    Aug 15, 2013
    Posts:
    164
    Hi, i get an error when the tangents of the original model are messed up or not there. Though the workaround is simple (set to calculate at import for instance), you might want to catch it.

    IndexOutOfRangeException: Array index is out of range.
    FbxExporters.Editor.ModelExporter+MeshInfo.get_Binormals ()
    FbxExporters.Editor.ModelExporter.ExportComponentAttributes (FbxExporters.Editor.MeshInfo mesh, Unity.FbxSdk.FbxMesh fbxMesh, System.Int32[] unmergedTriangles)
    FbxExporters.Editor.ModelExporter.ExportMesh (FbxExporters.Editor.MeshInfo meshInfo, Unity.FbxSdk.FbxNode fbxNode)
    FbxExporters.Editor.ModelExporter.ExportMesh (UnityEngine.GameObject gameObject, Unity.FbxSdk.FbxNode fbxNode)
    FbxExporters.Editor.ModelExporter.ExportInstance (UnityEngine.GameObject unityGo, Unity.FbxSdk.FbxNode fbxNode, Unity.FbxSdk.FbxScene fbxScene)
    FbxExporters.Editor.ModelExporter.ExportComponents (UnityEngine.GameObject unityGo, Unity.FbxSdk.FbxScene fbxScene, Unity.FbxSdk.FbxNode fbxNodeParent, Int32 exportProgress, Int32 objectCount, Vector3 newCenter, TransformExportType exportType)
    FbxExporters.Editor.ModelExporter.ExportAll (IEnumerable`1 unityExportSet)
    FbxExporters.Editor.ModelExporter.ExportObjects (System.String filePath, UnityEngine.Object[] objects)
    FbxExporters.Editor.ModelExporter.OnExport ()
    FbxExporters.Editor.ModelExporter.OnContextItem (UnityEditor.MenuCommand command)
    UnityEditor.GenericMenu:CatchMenu(Object, String[], Int32)
     
  17. imgspc

    imgspc

    Unity Developer - FBX Exporter

    Joined:
    Aug 22, 2017
    Posts:
    13
    Hi Binary42,

    We'll take a look and get it fixed for the next update.

    thanks for reporting.

    Simon
     
  18. imgspc

    imgspc

    Unity Developer - FBX Exporter

    Joined:
    Aug 22, 2017
    Posts:
    13
    Hi Tinovdk,

    Can you share the corrupted Anvil.fbx file with us so we can take a look?

    Simon

     
  19. imgspc

    imgspc

    Unity Developer - FBX Exporter

    Joined:
    Aug 22, 2017
    Posts:
    13
    To follow up on Mark's reply

    I would guess there's something missing from the plugin's configuration, like it didn't configure correctly. If you run this python script what do you get? (they should all be strings)

    Code (python):
    1.  
    2. import maya.cmds
    3. for a in  maya.cmds.optionVar(list=True):
    4.     if 'Unity' in a:
    5.         print a, type(a), maya.cmds.optionVar(q=a)
    6.  
    Simon

     
  20. Tinovdk

    Tinovdk

    Joined:
    Nov 28, 2013
    Posts:
    81
  21. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    2,862
    Maya 2013 doesn't appear to work.
     
  22. Voodoo_ZA

    Voodoo_ZA

    Joined:
    Mar 18, 2013
    Posts:
    134
    Awesome thx guys!! 3Ds Max integration close?
     
  23. unity_ikjJtsxUu_cS4A

    unity_ikjJtsxUu_cS4A

    Joined:
    Oct 30, 2017
    Posts:
    4
    I've got a 3D model in unity. It consists of several 3D buildings, trees, and streets. I would like to export all the objects (buildings, trees, and streets) as FBX. In order to do so I use "FBX Exporter (beta)". Some of the objects can be easily exported, but some of them not.
    I get the following error when try to export some of the objects:

    IndexOutOfRangeException: Array index is out of range.
    FbxExporters.Editor.ModelExporter.ExportComponentAttributes (FbxExporters.Editor.MeshInfo mesh, Unity.FbxSdk.FbxMesh fbxMesh, System.Int32[] unmergedTriangles)
    FbxExporters.Editor.ModelExporter.ExportMesh (FbxExporters.Editor.MeshInfo meshInfo, Unity.FbxSdk.FbxNode fbxNode)
    FbxExporters.Editor.ModelExporter.ExportMesh (UnityEngine.GameObject gameObject, Unity.FbxSdk.FbxNode fbxNode)
    FbxExporters.Editor.ModelExporter.ExportComponents (UnityEngine.GameObject unityGo, Unity.FbxSdk.FbxScene fbxScene, Unity.FbxSdk.FbxNode fbxNodeParent, Int32 exportProgress, Int32 objectCount, Vector3 newCenter, TransformExportType exportType)
    FbxExporters.Editor.ModelExporter.ExportComponents (UnityEngine.GameObject unityGo, Unity.FbxSdk.FbxScene fbxScene, Unity.FbxSdk.FbxNode fbxNodeParent, Int32 exportProgress, Int32 objectCount, Vector3 newCenter, TransformExportType exportType)
    FbxExporters.Editor.ModelExporter.ExportComponents (UnityEngine.GameObject unityGo, Unity.FbxSdk.FbxScene fbxScene, Unity.FbxSdk.FbxNode fbxNodeParent, Int32 exportProgress, Int32 objectCount, Vector3 newCenter, TransformExportType exportType)
    FbxExporters.Editor.ModelExporter.ExportAll (IEnumerable`1 unityExportSet)
    FbxExporters.Editor.ModelExporter.ExportObjects (System.String filePath, UnityEngine.Object[] objects)
    FbxExporters.Editor.ModelExporter.OnExport ()
    FbxExporters.Editor.ModelExporter.OnContextItem (UnityEditor.MenuCommand command)
    UnityEditor.GenericMenu:CatchMenu(Object, String[], Int32)

    Somebody told that "it seems one of the objects you are trying to import to FBX has a script in which you may have an array that is null or is getting out of range. I will advise checking the objects you have a script attached to see if that is the case." I removed all the scripts from the model. But still does not work.

    Do you have any idea?

    Regards,
     
  24. TheFragen

    TheFragen

    Joined:
    Nov 18, 2015
    Posts:
    4
    Hey, we are a team (DADIU) having problems with linked prefab instances. Specifically we want to have model updates AND texture updates be reflected in Unity after they are updated in Maya. Model updates, and the material itself is updated, but textures are never embedded when using this plugin.

    The showcase video highlights using a Stingray PBS shader, but from I gather from the documentation, a lambert material with a texture should work aswell. I cannot seem to get it to work. Have anyone gotten it to work yet, and would like to share their knowledge?
     
  25. vkovec

    vkovec

    Unity Developer - FBX Exporter

    Joined:
    Aug 9, 2017
    Posts:
    188
  26. vkovec

    vkovec

    Unity Developer - FBX Exporter

    Joined:
    Aug 9, 2017
    Posts:
    188
    Hi @laurentlavigne,

    The plugin supports Maya 2017 or later. We still allow the option to try installing to earlier versions of Maya, however, it is not guaranteed that they will work.

    Best,
    Viktoria
     
  27. vkovec

    vkovec

    Unity Developer - FBX Exporter

    Joined:
    Aug 9, 2017
    Posts:
    188
    Hi @GMax

    Yes we will release a new version of the package soon which will include the integration for 3Ds Max 2017 or later. We would love to get your feedback once it's out :)

    Best,
    Viktoria
     
    Voodoo_ZA likes this.
  28. vkovec

    vkovec

    Unity Developer - FBX Exporter

    Joined:
    Aug 9, 2017
    Posts:
    188
    Hi unity_ikjJtsxUu_cS4A,

    Could you please share a package containing a prefab for one of the objects that you are unable to export?

    An easy way to create the package is to create a prefab for your object if you haven't already, then right click on the prefab in the project view and select "Export Package...". This should export the prefab and any dependencies to a .unitypackage.

    Best,
    Viktoria

     
  29. Voodoo_ZA

    Voodoo_ZA

    Joined:
    Mar 18, 2013
    Posts:
    134
    AWESOME!! :D Will do! Thx guys!
     
    vkovec likes this.
  30. vkovec

    vkovec

    Unity Developer - FBX Exporter

    Joined:
    Aug 9, 2017
    Posts:
    188
    Hi @TheFragen ,

    In order for Unity to find textures added in Maya the textures will have to either be placed in the Unity project or embedded into the FBX file.

    For more information on where Unity searches for textures you can check out these links:
    http://answers.unity3d.com/questions/47733/importing-from-maya-textures-gone.html
    https://docs.unity3d.com/Manual/class-Mesh.html

    If you would like to export textures as embedded from Maya using the Maya Unity plugin, it's possible to change the export settings by modifying the following file in the FBX exporter package: "FbxExporters/Integrations/Autodesk/maya/scripts/unityFbxExportSettings.mel"
    In the file you should see a line that says
    Code (csharp):
    1.  
    2. FBXExportEmbeddedTextures -v false;
    3.  
    if you change the "false" to "true" then textures will be embedded on export.

    Let me know if this doesn't fix the problem or if you have any other issues.

    Yes you're right, lambert material with a texture should work as well.

    Best,
    Viktoria
     
  31. TheFragen

    TheFragen

    Joined:
    Nov 18, 2015
    Posts:
    4
    Great thank you, that did indeed solve the issue. Very much appreciated.
    I want to add, that when we export models with animations, we have to bake them manually first. Baking is done automatically when exporting to fbx through File -> Export. Further, when the model is imported in Unity, we have to find the model in Project, go to Rig, and set Animation Type to Generic to get animations, rather than it being set automatically.
     
  32. vkovec

    vkovec

    Unity Developer - FBX Exporter

    Joined:
    Aug 9, 2017
    Posts:
    188
    My pleasure, glad it solved the issue.

    For exporting animations from Maya, you can again modify the "FbxExporters/Integrations/Autodesk/maya/scripts/unityFbxExportSettings.mel" file in the FBX exporter package.
    Adding these lines to the file will let you set the same bake animation options as in File->Export:
    Code (csharp):
    1.  
    2. // Set to true to bake animation on export
    3. FBXExportBakeComplexAnimation -v true;
    4. // set the start time for baking the animation
    5. FBXExportBakeComplexStart -v [int];
    6. // set the end time for baking the animation
    7. FBXExportBakeComplexEnd -v [int];
    8. // set how many keys are created per frame
    9. FBXExportBakeComplexStep -v [int];
    10. // turn resample all on or off
    11. FBXExportBakeResampleAll -v false;
    12.  
    You can replace [int] with the appropriate start, end, and step values.

    Alternatively, you can comment out or remove the first line of the unityFbxExportSettings.mel file which is:
    Code (csharp):
    1. FBXResetExport;
    This will make it so that the File->Unity->Export button uses the same settings as the File->Export for everything that is not explicitly set in the unityFbxExportSettings.mel file.

    I'm assuming you are exporting an inanimate object such as a spaceship with animation, correct?
    Are you seeing this when exporting the model from Unity as well (i.e. if you check the model import settings immediately after you export or convert to linked prefab instance)?

    I'm trying to recreate the issue and so far I have done the following:
    1. Create Cube in Unity scene
    2. Convert Cube to linked prefab instance
    3. Check created fbx import settings -> Animation Type is set to none
    4. Import into Maya
    5. Export from Maya with animation
    6. Check fbx in Unity -> Animation Type is still set to none

    It looks like the issue is related to the fact that we currently don't support export of animations from Unity, however we will have to investigate further to know for sure.
     
  33. TheFragen

    TheFragen

    Joined:
    Nov 18, 2015
    Posts:
    4
    Hey vkovec, apologies for the late reply. Your suggest to add bake animation options to unityFbxExportSettings.mel successfully exports models with animations.

    You are right that it is inanimate objects (without a rig) we try to export. I can recreate your step-by-step guide, but as I said, animations are fully imported, once we set Animation Type to Generic. This option sticks for all future re-imports. It's fine we have to change the setting, I just wanted to make you aware of it.

    For anyone Googling this in the future, here are the export settings we ended up using for exporting animations:

    Code (csharp):
    1.  
    2. // Animations
    3. FBXExportBakeComplexAnimation -v true;
    4. FBXExportBakeComplexStart -v 0;
    5. FBXExportBakeComplexEnd -v `playbackOptions -query -animationEndTime`;
    6. FBXExportBakeComplexStep -v 1;
    7.  
     
  34. tufeixp

    tufeixp

    Joined:
    Sep 6, 2015
    Posts:
    22
    please! make it runtime! and importer too!
     
    rwgames68 and roryo like this.
  35. castor76

    castor76

    Joined:
    Dec 5, 2011
    Posts:
    1,734
    runtime importer.. that's my dream come true. haha
     
    roryo likes this.
  36. mrbenn

    mrbenn

    Joined:
    May 1, 2015
    Posts:
    13
    I got the same problem, here is the stack trace. Also, it is working fine with OSX + Maya 2018, but errors with Windows 10 + Maya 2018


    select -r Cube ;
    exportCmd.('__init__',) [()]
    exportCmd.('__del__',) [()]
    # Error: object of type 'int' has no len()
    # # Traceback (most recent call last):
    # # File "C:\Users\Peter\Documents\project\Assets\FbxExporters\Integrations\Autodesk\maya\scripts\UnityFbxForMaya\commands.py", line 276, in doIt
    # # if not self.loadUnityFbxExportSettings():
    # # File "C:\Users\Peter\Documents\project\Assets\FbxExporters\Integrations\Autodesk\maya\scripts\UnityFbxForMaya\commands.py", line 83, in loadUnityFbxExportSettings
    # # fileName = os.path.join(projectPath,"Assets", maya.cmds.optionVar(q="UnityFbxExportSettings"))
    # # File "C:\Program Files\Autodesk\Maya2018\bin\python27.zip\ntpath.py", line 67, in join
    # # p_drive, p_path = splitdrive(p)
    # # File "C:\Program Files\Autodesk\Maya2018\bin\python27.zip\ntpath.py", line 115, in splitdrive
    # # if len(p) > 1:
    # # TypeError: object of type 'int' has no len()
    # Traceback (most recent call last):
    # File "<maya console>", line 1, in <module>
    # File "<string>", line 2, in unityExport
    # RuntimeError: object of type 'int' has no len()
    # # Traceback (most recent call last):
    # # File "C:\Users\Peter\Documents\project\Assets\FbxExporters\Integrations\Autodesk\maya\scripts\UnityFbxForMaya\commands.py", line 276, in doIt
    # # if not self.loadUnityFbxExportSettings():
    # # File "C:\Users\Peter\Documents\project\Assets\FbxExporters\Integrations\Autodesk\maya\scripts\UnityFbxForMaya\commands.py", line 83, in loadUnityFbxExportSettings
    # # fileName = os.path.join(projectPath,"Assets", maya.cmds.optionVar(q="UnityFbxExportSettings"))
    # # File "C:\Program Files\Autodesk\Maya2018\bin\python27.zip\ntpath.py", line 67, in join
    # # p_drive, p_path = splitdrive(p)
    # # File "C:\Program Files\Autodesk\Maya2018\bin\python27.zip\ntpath.py", line 115, in splitdrive
    # # if len(p) > 1:
    # # TypeError: object of type 'int' has no len() #
     
    Last edited: Nov 7, 2017
  37. mrbenn

    mrbenn

    Joined:
    May 1, 2015
    Posts:
    13
    I got the same issue and ran the script, here's what I got:

    UnityAsset <type 'unicode'> C:/Users/Peter/Documents/project/Assets/Export_From_Unity/Assets
    UnityExportFileType <type 'unicode'> FBX export
    UnityProject <type 'unicode'> C:/Users/Peter/Documents/project

    When I ran it on OSX I got:

    1. UnityApp <type 'unicode'> /Applications/Unity2017_2/Unity.app
      UnityAsset <type 'unicode'> /Users/ben/project/Assets/PrototypeScene_01/Models
      UnityExportFileType <type 'unicode'> FBX export
      UnityFbxExportSettings <type 'unicode'> FbxExporters/Integrations/Autodesk/maya/scripts/unityFbxExportSettings.mel
      UnityFbxForMaya_Headless <type 'unicode'> 0
      UnityInstructionPath <type 'unicode'> _safe_to_delete/_temp.txt
      UnityProject <type 'unicode'> /Users/ben/project
      UnityTempSavePath <type 'unicode'> _safe_to_delete
     
    Last edited: Nov 7, 2017
  38. mrbenn

    mrbenn

    Joined:
    May 1, 2015
    Posts:
    13
    I just ran the installation again and it now works fine. I can't be sure, but maybe the wrong Maya version was selected in the first installation.
     
  39. vkovec

    vkovec

    Unity Developer - FBX Exporter

    Joined:
    Aug 9, 2017
    Posts:
    188
    Hi @TheFragen great I'm glad animation is exporting now :)

    This was an interesting find, I've logged it as an issue. Thanks for letting us know!
     
  40. vkovec

    vkovec

    Unity Developer - FBX Exporter

    Joined:
    Aug 9, 2017
    Posts:
    188
    Hi @mrbenn , thank you for sending the stack trace and variable values. It looks like the configuration did not set all the necessary variables on Windows. Particularly, the problem you are seeing is due to the "UnityFbxExportSettings" optionVar not being set.

    I'm glad it ended up working. I just tried installing to Maya 2017 then opening Maya 2018 and it does in fact cause this problem if I try to use the plugin in Maya 2018. Another possible cause could be resetting the Maya preferences after installing the Unity integration.

    Best,
    Viktoria
     
  41. vkovec

    vkovec

    Unity Developer - FBX Exporter

    Joined:
    Aug 9, 2017
    Posts:
    188
    Hi @tufeixp,

    I'll pass on the request.

    Best,
    Viktoria
     
    roryo, Kubic75 and Voodoo_ZA like this.
  42. olix4242

    olix4242

    Joined:
    Jul 21, 2013
    Posts:
    1,671
    Great plugin. Here is my request for future versions:
    -Possibility to export UVW coordinates (as it seems, right now it expoorts only UV). I know that standard UV mapping is done via Vector 2, but Unity internally can use Vector3 or Vector4. Exporting Vector4 probably isn't supported by FBX format, but having atleast Vector3 as output would mean much.
    -Possibility to export all UV channels supported by unity mesh: UV0, UV1, UV2 and UV3.

    Why?
    We are currently using a system that generates dynamic mesh in editor, and it has to write to those adittional channels in Vector3 format (for later use with shaders). Because of it's dynamic nature, it would be great to be able to export mesh to a file for later usage as final mesh. Also, having a possibility to export mesh as it is inside unity would be more consistent way of doing it (with all limits that apply from a file format).
     
  43. vkovec

    vkovec

    Unity Developer - FBX Exporter

    Joined:
    Aug 9, 2017
    Posts:
    188
    Hi @olix4242,

    Thank you for the request, we'll add this in a future version.

    The FBX exporter should already be exporting all populated UV channels in the mesh. Are you seeing only one being exported even though you have several set?

    Best,
    Viktoria
     
  44. olix4242

    olix4242

    Joined:
    Jul 21, 2013
    Posts:
    1,671
    Good to know. I was exporting with UV3 set to Vector4, so probably, as it isn't implemented, it discarded that channel.

    BTW, one question that seems important in this case: does Unity importer supports UVW (vector3) coordinates? (I haven't had a time to test this yet)
     
  45. imgspc

    imgspc

    Unity Developer - FBX Exporter

    Joined:
    Aug 22, 2017
    Posts:
    13
    Hi Olix,

    The FBX file format only supports UV (vector2) values and this is the only source UV data used by the Unity FBX Importer and Exporter.

    I've seen it handled in other 3d application by sending the UVW values to the vertex color map but that would require a change to both the importer and exporter code.

    You said you're using the UVW values for 'later' use by a shader. Does that mean you're reading the UVW values from a texture image? If so, a workaround would be for you to create sidecar image file, on FBX export, containing the UVW values encoded into the RGB values - would that work?

    Simon
     
  46. Voodoo_ZA

    Voodoo_ZA

    Joined:
    Mar 18, 2013
    Posts:
    134
    3ds max close? "please say yes... 2 weeks now.." ;)
     
  47. Jamroah

    Jamroah

    Joined:
    Nov 4, 2015
    Posts:
    3
    Hi there,

    Is it on the roadmap at all to preserve skinned mesh renderers and their bones when exporting?

    Ben
     
  48. ans_unity

    ans_unity

    Unity Technologies

    Joined:
    Oct 12, 2017
    Posts:
    115
    This week :)
     
    Archviz3d likes this.
  49. Voodoo_ZA

    Voodoo_ZA

    Joined:
    Mar 18, 2013
    Posts:
    134
    Yes!!!!!!!!!!!!!!!! Thank you Sir!!
     
  50. ans_unity

    ans_unity

    Unity Technologies

    Joined:
    Oct 12, 2017
    Posts:
    115
    Hi everyone,

    The one button import/export is now available in Beta for 3DsMax 2017 and up. You will now find the exact same simplified workflow that was available in the Maya version of the FBX Exporter. Have a try and let us know what you think!

    The following improvements have been made to the package:
    - Added 3Ds Max Unity integration (supported versions are 2017 and 2018)
    - Fix so Object references aren't lost when using Convert to Linked Prefab Instance
    - Fix Maya Integration dropdown not appearing in the Export Settings

    There's a known issue with the axis convention if you start an FBX in 3ds Max, import to Unity, then export it back to Max. What works is if you start in Unity, export to Max, and re-import to Unity.

    Installation
    1. Download the package in the proper folder.
    2. Make sure your 3D software is closed.
    3. Once in Unity, you can click "Edit > Project Settings > FBX Exporter"
    4. There, you have a drop-down menu that will automatically show each compatible 3D tool you have installed- for example, "3DS Max 2018, Maya 2017, Maya 2018"
      You choose the one you wish to work with, then click "Install Integration"
      This auto-opens the 3D tool (ie, 3DsMax 2018), installs the plugin, and auto-closes it
    Maya LT one button import/export is going to be next on our roadmap, we are aiming at a December Beta release.

    You can download the package here.

    Note: The FBX Exporter is a “Restricted Asset” under the Asset Store End User License Agreement and is subject to the Unity Companion License 1.0. Further, use of the Autodesk FBX SDK is subject to your acceptance of and agreement to the FBX SDK License and Service Agreement terms.
     
    Last edited: Nov 20, 2017
unityunity