FBX2glTF/npm
Michael Bayne 946f12361c Numerous improvements to Node API.
- Removed the shell scripts. We now invoke everything straight from Node.

- Allow passing command line arguments to the tool via the Node API.

- Require .glb or .gltf extension because the tool is automatically going to
  add that extension anyway, so we strip it off and add it back to shield the
  user from this weirdness. The tool may eventually stop adding an extension
  (and perhaps just validate it) and we can simplify our code.

- Automatically add --binary option if the requested target file is a .glb.

This also renames the bin/Windows directory to bin/Windows_NT, which is
unfortunate but that matches os.type(). This ultimately comes from uname and
that's what Windows chose to return. Let's just live with this historical
accident rather than try to paper over it.
2017-10-19 13:44:54 -07:00
..
bin Numerous improvements to Node API. 2017-10-19 13:44:54 -07:00
LICENSE Initial commit. 2017-10-13 01:55:11 -07:00
PATENTS Initial commit. 2017-10-13 01:55:11 -07:00
README.md Numerous improvements to Node API. 2017-10-19 13:44:54 -07:00
index.js Numerous improvements to Node API. 2017-10-19 13:44:54 -07:00
package.json Numerous improvements to Node API. 2017-10-19 13:44:54 -07:00
yarn.lock Numerous improvements to Node API. 2017-10-19 13:44:54 -07:00

README.md

FBX2glTF

This is a command line tool for converting 3D model assets on the well-established FBX format to glTF 2.0, a modern runtime asset delivery format.

Platform Binaries

This package contains three versions of FBX2glTF, compiled for three platforms and located in three eponymous directories:

  • bin/Darwin/FBX2glTF
  • bin/Linux/FBX2glTF
  • bin/Windows_NT/FBX2glTF.exe

Usage

/**
 * Converts an FBX to a GTLF or GLB file.
 * @param string srcFile path to the source file.
 * @param string destFile path to the destination file.
 * This must end in `.glb` or `.gltf` (case matters).
 * @param string[] [opts] options to pass to the converter tool.
 * @return Promise<string> a promise that yields the full path to the converted
 * file, an error on conversion failure.
 */
convert(srcPath :string, destPath :string, args :?string[]) :Promise<string>

For example:

const convert = require('fbx2gltf');
convert('path/to/some.fbx', 'path/to/target.glb', ['--flip-v']).then(
  destPath => {
    // yay, do what we will with our shiny new GLB file!
  },
  error => {
    // ack, conversion failed: inspect 'error' for details
  }
);

Further Reading

The home of this tool is here.

Authors

  • Pär Winzell
  • J.M.P. van Waveren
  • Amanda Watson

Legal

This software contains Autodesk® FBX® code developed by Autodesk, Inc. Copyright 2017 Autodesk, Inc. All rights, reserved. Such code is provided “as is” and Autodesk, Inc. disclaims any and all warranties, whether express or implied, including without limitation the implied warranties of merchantability, fitness for a particular purpose or non-infringement of third party rights. In no event shall Autodesk, Inc. be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of such code.