Search Unity

  1. Unity 2019.2 is now released.
    Dismiss Notice

Unity Fbx Exporter - Export Meshes, Skinned Meshes, Terrains and Textures

Discussion in 'Assets and Asset Store' started by UnLogick, Oct 2, 2016.

  1. tonyb-vr

    tonyb-vr

    Joined:
    Jul 25, 2017
    Posts:
    5
    Hello @UnLogick

    Sorry to bother but is there any ETA on the blendshape support? I am currently blocked using the exporter until there is.

    Thank you for the hard work.

    Best,

    Tony
     
  2. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Hi Tony

    I'm afraid I can't offer an ETA, but it's on my roadmap in the "soon(tm)" category as opposed to the "later (never)" category.

    That being said it will almost certainly not be the next two weeks.

    Currently there are three items on my immediate road map
    • Export of world space textures. (Tri-planar, voxels, etc)
    • Mac and Linux support
    • Blendshapes
    Regards,
    Joen - UnLogick
     
  3. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    573
    For those that have out of memory errors with only 16 GB of ram try increasing your Virtual memory settings on the hard drive your working on/saving to etc. I had to do this for a program called iClone (not the program's fault) just to export a large project for rendering to Indigo Renderer. It's just that between programs loaded and the available resources a program sometimes needs requires a little more flexibility. Sometimes setting your hard drives to 30-40GB of Virtual Ram should be good enough.
     
  4. rameezmalik

    rameezmalik

    Joined:
    Mar 14, 2017
    Posts:
    1
    hi,
    its a great tool for every unity 3d artist. here is a lil problem. When am exporting whole scene its destroying textures.(darken, some artefacts). how can i resolove this? btw i am using unity 5.6.0f3.
     
  5. 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. Some of the objects can be easily exported, but some of them not.
    I get the following error:

    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,
     
  6. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    This is a simple case of mistaken identities. More than a year ago I created the asset store package Unity Fbx Exporter which exports meshes, skinned meshes, terrains and textures. The call stack clearly indicates you're using the new 2017.2 Fbx Exporter that is built into Unity which as far as I known only exports static meshes. I see you've also found their support forum and they should be able to answer your questions there.
     
  7. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    This sounds annoying, please send me a repro case so that I can figure out what goes wrong.
     
  8. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    How big are those scenes that you're exporting? In my eyes 16 GB should be plenty to export any scene that fits inside Unity. I wonder if it's actually my texture exporting which is the problem here.
     
  9. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    573
    Also good to note that mesh/animation projects for ray-tracing in a rendering solution usually uses textures from 4k, 8k or higher for film and in my case for that also requires dense/tessellated meshes -so it was very intensive to create/export but for Unity games don't typically require/aim for bigger texture resolutions they can make higher definition work with ease. Personally I haven't encountered out of memory errors when exporting with your asset because I'm aiming/waiting for the Megasplat/Voxeland integration. Jusy FYI, Voxeland has been recently upgraded to use Texture Arrays like and perhaps in preparation for full Megasplat compatibility.
     
  10. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Right, my fear is that I'm somehow keeping a reference to a copy of the textures while exporting, so that it's only once the export is done that the garbage collecting can kick in... I don't believe I'm doing that but 16gb is a lot and I can't really see how else such a number can be exceeded...
     
  11. tonyb-vr

    tonyb-vr

    Joined:
    Jul 25, 2017
    Posts:
    5
    Hi @UnLogick,

    Thank you for getting back to me and glad to hear blendshape support is on the roadmap. Looking forward to being able to use the plugin once it's added.

    Best,

    Tony
     
  12. zmaxz

    zmaxz

    Joined:
    Sep 26, 2012
    Posts:
    143
    Does it support this UV data ?
     

    Attached Files:

  13. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Not yet, currently uv is only exported as the old two channels format, not four.

    But adding Vector4 uv support is trivial and will be in my next release.

    Edit: Not sure what uv4_asColor is supposed to be, what I'm talking about is changing uv to be FbxVector4 but unless it really matters to someone I don't see a need to write the uv as a color.
     
  14. Fire-Blade

    Fire-Blade

    Joined:
    Nov 21, 2017
    Posts:
    3
    Hello, can I export landscapes with textures created in WorldComposer in 3d max or Maya? Thanks.
     
  15. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Yes, it can export the terrain texture as seen in Unity (merged by the terrain material/shader) just fine. Just keep in mind that worldspace shaders like tri-planar shaders is not yet supported. Also when exporting one texture for an entire terrain you wont get the same fine detail as you get in Unity when zooming.
     
  16. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    573
    @UnLogick Hi Joen, how is the support for the world space textures (Voxeland/Megasplat) going? I could test any beta if you like, I have both Megasplat and Voxeland
     
  17. jfcampos

    jfcampos

    Joined:
    May 6, 2013
    Posts:
    5
    @UnLogick Hey there, i just bought the plugin to export a model with the lightmap and it doesn't seem to be supported.

    Is there a way to do it (even if I need to code) or ETA to support it?

    Otherwise i'd like to ask for a refund please.
     
  18. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    @Ascensi I've actually made a little progress on that, but it's still some time away.

    @jfcampos It doesn't work off the bat, but it is quite possible to do. If you pm me an email address I can add you to a slack channel and walk you through it. I plan to add it at some point in the future as a one click option, but at this point in time it comes with "some hacking required". If this doesn't suit you just send me a pm with the order number and I'll issue a refund.
     
    Ascensi likes this.
  19. jfcampos

    jfcampos

    Joined:
    May 6, 2013
    Posts:
    5
    PM Sent.

    I'm looking forward to use it.
     
  20. Adrian_LM

    Adrian_LM

    Joined:
    Aug 1, 2017
    Posts:
    5
    Hi, I have some questions about the plugin.

    What is the range of .fbx versions that is supported by your plugin? I primarily wish to export .fbx only in Unity runtime. Can you confirm that it is possible?
     
  21. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    The Fbx Exporter is built with fbx sdk 2015.1, the fbx sdk provides several export binary and ascii options.

    You can export at runtime from windows 64 bit platforms, the dll should be located in streaming assets and my test builds worked for me, though I've had reports that it may not always work. Placing the dll file next to the exe file should sort any problems finding the dll.
     
  22. DefCon42

    DefCon42

    Joined:
    May 13, 2017
    Posts:
    1
    Hey, just bought this and it looks great! Is there any way to add 32 bit Windows support for runtime exporting? That would be a god send!
     
  23. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Actually I believe that should be possible. I'll do some testing.
     
  24. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    573
    @UnLogick Denis recently completed adding MegaSplat support to Voxeland so if you only had time to focus on compatibility for one shader for the immediate future please choose MegaSplat. Apparently UV space is rewritten/processed on Voxeland for Megasplat compatibility on meshes but you may want to confirm this with Denis.
     
  25. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Interesting, I will contact him and see what he came up with.
     
  26. kamihiro74

    kamihiro74

    Joined:
    May 15, 2013
    Posts:
    13
    Hi, I'm interested in purchasing this assets, I need to export camera position and fov from Unity to 3dsmax.
    is it possible to do that with this assets?
     
  27. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    When unity announced camera and light support for their fbx importer I took a look. I tested against Maya but unfortunately I was unable to get it to work. Adding the camera and positioning it worked just fine, I recall setting the fov seemed to work as well, but for some weird reason the rotation seemed to be messed up and my attempts to compensate fell short. I can make the API methods for this available to you but you will have to do some tinkering to get it the last step. If you manage to get it working I'd be very interested in what that last step was.
     
  28. kamihiro74

    kamihiro74

    Joined:
    May 15, 2013
    Posts:
    13
    Thank you for replied !
    I'm try to export 3dsmax not Maya, is this the same thing?
    what exactly some tinkering I have to do with last step? Maxscript ?
     
  29. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    One option would be to add custom properties to the camera object and read those from maxscript.
    Another option would be to experiment with the rotation of the camera object.

    Since I can't offer any guarantees up front and you'd need a custom version with a bit of beta functionality you will of course be entitled to a refund if you can't make it work.
     
    Last edited: Feb 12, 2018
  30. Ascensi

    Ascensi

    Joined:
    Sep 7, 2013
    Posts:
    573
    @UnLogick this might help, I think @jbooth creator of Megasplat added some texture bake out features although I'm not sure if Megasplat can bake out Triplanar textures. If your exporter even added support for Megasplat to tap into the bake out feature on export it would at least solve it for that use case. I know it would be better if you had triplanar export for any shader and maybe if jbooth already solved it, he might share the info or point you in the right direction.
     
  31. bebop17

    bebop17

    Joined:
    Mar 12, 2018
    Posts:
    1
    could i sent baking texture to 3ds max ?
     
  32. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    The texture baking uses the deferred pbr buffers, they consist of three textures in the form of png files, a diffuse, a normalmap and a specular. These files can be used by any software that supports png including 3ds max.

    It should be noted that certain materials with special shaders doesn't export cleanly. Megasplat is still not supported and neither is tri-planar shaders. Outline shaders is another example of shaders that wouldn't work with the texture exporter.
     
  33. Carpet_Head

    Carpet_Head

    Joined:
    Nov 27, 2014
    Posts:
    105
    Will this ever support usage at runtime?
     
  34. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Already does! All you gotta do is make sure the dll is available at runtime. Creating a StreamingAssets folder inside the plugin and placing it there should do the trick.

    I'm wrapping up a new release with 32 bit support and skinned mesh blendshape support, it will also have much better error messages when it can't find the dll.
     
  35. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Unity Fbx Exporter 1.4.0 is live on the asset store.
    Asset Store: Unity Fbx Exporter

    Added 32 bit support!
    This is good news for HoloLens users in particular.

    Skinned Mesh blend shapes now supported
    The much requested blend shapes have been added, however for some obscure reason static mesh blend shapes are not supported.

    Easier runtime support!
    All you got to do is select the appropriate dll in the dll folder and select standalone support. For good measure please uncheck the 32 bit platform for the 64 bit dll and uncheck the 64 bit platform for the 32 bit dll to avoid bloating your build size.
     
  36. alickn

    alickn

    Joined:
    Mar 23, 2018
    Posts:
    7
    Greetings to all members,
    I am a new user. I upgraded to Unity Fbx Exporter 1.4.0. I can nolonger export as I get the error "Platform not sppoorted or dll is missing." I have checked in the folder the dll file is there. See attached screen grab. Has anyone experienced this?
    My details are: Windows 10, 64bit, Unity 2017.3.1f1 Personal(64bit), Graphics card Nividia GTX 6gb, Ram 8gb fbx exporter error.png
     
  37. alickn

    alickn

    Joined:
    Mar 23, 2018
    Posts:
    7
    Dear Unity Members,

    I uninstalled Unity 2017.3.1f1, restarted the computer, downloaded and installed Unity 2017.4.0f1, which is the latest version. Fbx exporter is still giving errors as in my previous post. Please help.
     
  38. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Hi Alick

    I've tested 2017.3.1f1 with a clean download from the asset store on Windows 10, 64 bit and that works for me.

    But the warning in your console log gives a valuable hint. It does find the dll however unity reports that this dll is not marked as compatible with the editor. This is strange because your inspector clearly shows that it should be suited for all platforms. Also I notice that there is no Platform settings in your inspector, so there is something to investigate there.


    So that leads to three questions.
    1. What is your unity build target?
    2. Are you using a cache server? If so disable your cache server and try step 3.
    3. If you right click the dll in your project view and choose reimport does the error go away?
    As a last resort you can hack your way past my check. Try to open the file UnityFbxExporterBinding.cs and comment out lines 26-30. This disables my platform check and just calls the api method to load the dll directly. Does that work?

    Regards,
    Joen
     
  39. alickn

    alickn

    Joined:
    Mar 23, 2018
    Posts:
    7
    Hi Joen,
    Here are the answers to your questions
    1. I am not building games for any platform, just want to work on terrains and export back to windows PC for use in other programs.
    2.Not running a cache server, but obviously the ISP provider might be running catche servers.
    3.No
    4.No
    Would you send me the previous version 1.3, so I can atleast have something to work with as I wait for a solution? I think the introduction of 32bit support in 1.4 disturbed everything. Are there still computers that are running on 32bit and running Unity 2017 at the same time? I sent you a PM yersterday.

    Regards,
    Alick
     
  40. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    1. In Unity there is always a selected platform, you can find it in Build Settings.
    2. Heh, that shouldn't matter
    3.
    4. What? That failed? I was quite certain that would work.
    HoloLens is using 32bit and people like to make content creation tools for XR. That means you need to be able to export an fbx.
    The reason I didn't send you a 1.3 version yet is because I don't have one lying around, I'll have to go back in git and build it for you.
     
  41. alickn

    alickn

    Joined:
    Mar 23, 2018
    Posts:
    7
    Hi Joen,

    My default target build platform settings are selected as windows, the architecture is x86_64.
    So, there is no way, this problem can be solved? This doesn't sound good. Is there a reason the dll file is failing to load?
    Could a change in the ISP provider have anything to do with it, despite the fact my computer networkcard is still the same?

    Regards,

    Alick.
     
  42. alickn

    alickn

    Joined:
    Mar 23, 2018
    Posts:
    7
    Hi Joen,
    I have tried to change several settings on the platform. The problem is that the fbx dll file, fails to load. You have to recheck your script files responsible for loading this dll file. Something has fundamentally changed between version 1.3 and 1.4. I would like to try your plugin at my office computer, with your permission, to see if it will work, assuming there will be no issues with different network cards and ISPs.
    Regards,
    Alick
     
  43. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Sure give it a spin on another machine. And yes I did change a lot in how the dlls was managed in order to have clean code that handled both 32 bit and 64 bit. I have no clue why it's not working for you. I'll try to make a 1.3 package for you tomorrow evening.
     
  44. alickn

    alickn

    Joined:
    Mar 23, 2018
    Posts:
    7
    Hi Joen,
    I tested the fbx exporter on my office computer, and the errors are exactly the same as the ones I get on my home computer. See the attached screen grab. If 1.4 is working on your computer, it could mean that your computer is uniquely configured to recognise the dll file and load smoothly. Perhaps, you need to Re-upload the files to the server. You also need to test the fbx exporter with a different computer, which has not been used to create the exporter. My Office computer spec: Windows 10, 64bit, Nividia graphics CARD Titanium 980 GTX 10gb, Ram 32gb. Unity 2017.3.0f1 64 bit.

    Regards,

    Alick
     

    Attached Files:

  45. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Thank you for your patience, I've recovered the 1.3.1 version from git and have mailed it to you while I continue to investigate why it wasn't working for you.

    If anyone else has this problem just mail me your unity order number and I'll send you the 1.3.1 version manually until I find a proper fix.
     
  46. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    I pinned down the issue, while adding 32 bit support I set the dll project in debug mode. The debug mode uses debug versions of platform dlls and you only have those if you've installed the platform sdk. You can expect 1.4.1 in a few days after I've set up the 32 bit release target and verified the fix.
     
  47. visualjump3d

    visualjump3d

    Joined:
    Jun 6, 2014
    Posts:
    5
    Hi ,
    can I export a mesh in runtime in Game Mode?
     
  48. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Yes, to use the exporter from your code simply call one of the UnLogickFactory.FbxExporter.Export(...) methods. There are several with varying degrees of control.
     
  49. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,594
    Warning version 1.4.0 is linked with the debug version of the fbx sdk, this means it requires the platform sdk from microsoft. I'm gonna make a version 1.4.1 as soon as possible. In the mean time you can mail me for a copy of 1.3.1
     
  50. jjackson888

    jjackson888

    Joined:
    Feb 26, 2017
    Posts:
    1
    How do I get a refund. Order number: 2474057532332. I have too many problems with this plugin. In my console I am getting "fbx Exporter - DLL not found!". I have tried everything I can to fix this. I have even uninstalled and reinstalled Unity 2017.41f1 (64bit). In the General Export Options the Exported Fbx Format says "Platform not supported or dll is missing." I have no idea why this plugin is not working. I have Windows 64bit as my target platform. I have select platforms for plugin to Any platform Editor and Standalone. I have tried 32 and 64 bit but nothing is working. I would like a refund please.
     
    Last edited: Apr 22, 2018