johnfredcee / fbx-conv

Command line utility using the FBX SDK to convert FBX/Collada/Obj files to a custom text/binary format for static, keyframed and skinned meshes.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

fbx-conv

This is my personal fork of fbx-conv.

The master branch just tracks upstream; the development happens on the jfc branch where it's built with CMake instead of premake and linked with an up to date fbx sdk.

Build Status

Command line utility using the FBX SDK to convert FBX/Collada/Obj files to more runtime friendly formats. The FBX content is parsed into an in-memory datastructure. Pluggable writers then take this datastructure to generate the output. Send us a pull request if you want the writer for your engine/framework/app to be integrated. We'll build the converter for Windows, Linux and Mac.

The FBX parser is largely based on GamePlay SDK's encoder. We'll try to back-port any bug fixes or improvements.

Hangout notes https://docs.google.com/document/d/1nz-RexbymNtA4pW1B5tXays0tjByBvO8BJSKrWeU69g/edit#

Command-line Usage

  • Windows - fbx-conv-win32.exe [options] <input> [<output>]
  • Linux - fbx-conv-lin64 [options] <input> [<output>]
  • Mac - fbx-conv-mac [options] <input> [<output>]

Options/flags

  • -? -Display help information.
  • -o <type> -Set the type of the output file to <type> : FBX, G3DJ (json) or G3DB (binary).
  • -f -Flip the V texture coordinates.
  • -p -Pack vertex colors to one float.
  • -m <size> -The maximum amount of vertices or indices a mesh may contain (default: 32k)
  • -b <size> -The maximum amount of bones a nodepart can contain (default: 12)
  • -w <size> -The maximum amount of bone weights per vertex (default: 4)
  • -v -Verbose: print additional progress information

Example

fbx-conv-win32.exe -f -v myModel.fbx convertedModel.g3db

Precompiled Binaries

These binaries are recompiled on any changes in the Git repository, via the travis build

On Windows you'll need to install VC 2015 Redistributable Package https://www.microsoft.com/en-us/download/details.aspx?id=48145

On Linux and Mac, we have to link to the dynamic libraries of the FBX SDK (libfbxsdk.so and libfbxsdk.dylib). We recommend copying libfbxsdk.so to /usr/lib on Linux. Otherwise you can use LD_LIBRARY_PATH and set it to the directory you put the .so file.

There's also a Qt GUI wrapper and Java GUI around it.

Building

You'll need premake and an installation of the FBX SDK 2019.0. Once installed/downloaded, set the FBX_SDK_ROOT to the directory where you installed the FBX SDK. Then run one of the generate_XXX scripts. These will generate a Visual Studio/XCode project, or a Makefile.

On Linux and Mac, you can follow Travis build steps in order to build and run it.

About

Command line utility using the FBX SDK to convert FBX/Collada/Obj files to a custom text/binary format for static, keyframed and skinned meshes.

License:Apache License 2.0


Languages

Language:C 60.6%Language:C++ 35.9%Language:Objective-C 2.6%Language:Lua 0.8%Language:Shell 0.1%Language:Batchfile 0.0%