Shop Forum More Submit  Join Login
I noticed the next version of Blender, i.e., Blender 2.80, for 64-bit Windows OS is going to be compiled using Visual Studio 2015 and uses Python 3.7 (see builder.blender.org/download/).  This means, the Bos FBX Importer/Exporter I posted will not work.  Since this importer/exporter may be useful, I tried to prepare for that change.

What I did:
1. Download umio code from github.com/uimac/umio (direct link to the zip: github.com/uimac/umio/archive/…)
2. Download Autodesk FBX SDK from www.autodesk.com/products/fbx/…
3. Download boost from www.boost.org/
4. Download Python 3.7 from www.python.org/
5. Extract umio-master.zip to a folder
6. Install Autodesk FBX SDK
7. Install Python 3.7
8. Create a folder fbxsdk2018 under umio's lib folder
9. Copy the include folder of Autodesk FBX SDK to fbxsdk2018 created in the previous step
10. Copy the x64 folder of Autodesk FBX SDK (which is under lib\vs2015) to fbxsdk2018 created in the previous step
11. Create a folder python37 under umio's lib folder
12. Copy the include folder of Python 3.7 to python37 created in the previous step
13. Create the x64 folder under python37 created in the previous step
14. Create the Release folder under x64 created in the previous step
15. Copy the python37.lib from Python 3.7 (which is under libs) to Release created in the previous step
16. Extract boost to a folder
17. Open the Developer Command Prompt for Visual Studio 2015
18. Set the PATH to include the path where Python 3.7 is installed at that command prompt
19. In that command prompt, cd to the path where boost is extracted
20. In that command prompt, run the batch file bootstrap.bat
21. In that command prompt, run b2 with the argument architecture=x86 address-model=64 to create the Windows 64-bit lib
22. Create the include folder under umio's lib\boost folder
23. Copy the boost folder from where boost is extracted to include created in the previous step
24. Copy the libboost_python*.lib from boost's stage\lib folder to either umio's lib\boost\x64\Debug or lib\boost\x64\Release folder.  The one with the name has a string "-gd-" should go to the Debug folder
25. Open the umio's umio.sln with Visual Studio 2015 and let it convert the solution and projects. Once it finished, make umio_exe_fbx2015 as the StartUp project, then save the changes and close the Visual Studio 2015.
26. Edit the following project files:
  • project\umio_lib_nofbx\umio_lib_nofbx.vcxproj
  • project\umio_lib_obj\umio_lib_obj.vcxproj
  • project\umio_pyd_nofbx\umio_pyd_nofbx.vcxproj
  • project\umio_pyd_fbx2015\umio_pyd_fbx2015.vcxproj
  • project\umio_lib_fbx2015\umio_lib_fbx2015.vcxproj
  • project\umio_exe_fbx2015\umio_exe_fbx2015.vcxproj
Replace WITH_FBX2014 with WITH_FBX2015
Replace python34 with python37
Replace v140_xp with v140
Replace libboost_python-vc120-mt-gd-1_57.lib with libboost_python37-vc140-mt-gd-x64-1_68.lib
Replace libboost_python-vc120-mt-1_57.lib with libboost_python37-vc140-mt-x64-1_68.lib

27. Delete umio.VC.db if it exists
28. Reopen the umio's umio.sln with Visual Studio 2015.  Go to the project umio_pyd_fbx2015 and edit UMPython.cpp
29. It is because passing non-pointer-like types to uninitialized_copy, uninitialized_copy_n, or uninitialized_fill fails to compile in Visual C++ (see msdn.microsoft.com/vs-knowniss…), the following code lines have to be added to UMPython.cpp before the line #endif //WITH_PYTHON at the end of the file:

  namespace ex = umio;

  namespace boost {
    template <>
    inline umio::UMMesh const volatile * get_pointer(class umio::UMMesh const volatile *em) {
       return em;
    }

    template <>
    inline umio::UMSkeleton const volatile * get_pointer(class umio::UMSkeleton const volatile *em) {
      return em;
    }

    template <>
    inline umio::UMCamera const volatile * get_pointer(class umio::UMCamera const volatile *em) {
      return em;
    }

    template <>
    inline umio::UMNode const volatile * get_pointer(class umio::UMNode const volatile *em) {
      return em;
    }

    template <>
    inline umio::UMObject const volatile * get_pointer(class umio::UMObject const volatile *em) {
      return em;
    }
  }

30. Select "Release" and "x64" rebuild the solution.
31. The results should be found in out\x64\Release
32. Copy umio_fbx2015.exe to umconv folder to where Blender is installed.  Then rename it to umconv_bos_fbx2018_win64.exe
33. Create the python37 folder under win64bit folder where the original Bos FBX Importer/Exporter is installed.  
34. Copy umio_fbx2015.pyd to python37 created in the previous step.  Then rename it to UMIO.pyd 
35. Modify the import_bos_fbx.py and export_bos_fbx.py to use the pyd and exe.  


Bos FBX Importer/Exporter for Blender 2.80 (Windows 64-bit Only)

Download
www.dropbox.com/s/no4wxgxk3c8q…

Overview
This addon is based on Bos FBX Importer/Exporter created by Kazuma Hatta. The original can be found at blenderfbx.render.jp/
Blender 2.80 uses Python 3.7, therefore the original Bos FBX Importer/Exporter does not work anymore.
This addon is built with original source code with boost 1.68.0 (www.boost.org/) and Autodesk FBX SDK 2018.1.1 (www.autodesk.com/products/fbx/…)
The Python code is modified to use the UMIO.pyd for Python 3.7 and the umconv_bos_fbx2018_win64.exe for Autodesk FBX SDK 2018.1.1.

Installation
1. Copy umconv folder to where Blender is installed.
2. Run Blender
3. Open User Preferences.
4. Select Add-ons, then click Install from File.
5. Locate the io_scene_bos_fbx.zip, then click Install from File.
6. Enable the Add-ons, then click Save User Settings
This is the latest update with Python 3.7.  It should work with Blender 2.79.

This is my own notes about how I built it.

If you just want to download the file, the link is www.dropbox.com/s/no4wxgxk3c8q…

Please read the readme.txt in the zip file :thanks:
Add a Comment:
 
:iconteryn-rowan:
teryn-rowan Featured By Owner Sep 10, 2018
I apologize for this silly question but what do you mean select "FBX SDK 2018" at the SDK selection list?
Reply
:iconamyaimei:
amyaimei Featured By Owner Sep 10, 2018  Hobbyist Digital Artist
This only apply to the Export, not import.

Reply
:iconteryn-rowan:
teryn-rowan Featured By Owner Sep 13, 2018
Oh, I am trying to export a fbx in Blender. There's some issues with the model when I open the exported fbx in 3DS, and I'm just trying to narrow down what the issue might be.
Reply
:iconamyaimei:
amyaimei Featured By Owner Sep 13, 2018  Hobbyist Digital Artist
Noted that it is not 100% perfect.  I'm not using it a lot now because I've found a better way.
I'm using Blender 2.80 now, it is still beta.  I downloaded it from builder.blender.org/download/ If you concern the compatibility, use the 2.79 version from that download location.
The fbx import and export comes with Blender 2.8 is better than before.  I can import without issue.  You can try to export with the export script from Blender to see if it still has issue.
Reply
:iconteryn-rowan:
teryn-rowan Featured By Owner Sep 13, 2018
I will definitely try that. Thank you!!
Reply
:iconlord-crios:
Lord-Crios Featured By Owner Aug 31, 2018  Hobbyist Digital Artist
Have you made this? Really cool
Reply
:iconamyaimei:
amyaimei Featured By Owner Sep 3, 2018  Hobbyist Digital Artist
Not 100%
Since it is open source, I tried to make it up-to-date after the original creator is not doing that.
You can see the long description of how I do that.
Reply
:iconlord-crios:
Lord-Crios Featured By Owner Sep 3, 2018  Hobbyist Digital Artist
Very good
Reply
:iconlostbrave:
LostBrave Featured By Owner Aug 30, 2018  Hobbyist Digital Artist
Success fella (Reactions) Yes fella ( Message ) Applaud fella (Reactions) Applaud fella (Reactions) Applaud fella (Reactions) Fella Heart Kiss (Love):iconamyaimei:Fella Heart Kiss (Love)  
Reply
:iconamyaimei:
amyaimei Featured By Owner Sep 3, 2018  Hobbyist Digital Artist
:thanks:
:huggle:
Reply
:iconlostbrave:
LostBrave Featured By Owner Sep 3, 2018  Hobbyist Digital Artist
Fella Heart Kiss (Love):iconamyaimei:Blowkiss valentine fella (Love)  
Reply
Add a Comment:
 
×


More from DeviantArt



Details

Submitted on
August 30, 2018
Submitted with
Sta.sh Writer
Link
Thumb

Stats

Views
953 (1 today)
Favourites
11 (who?)
Comments
11