Skip to content

Exporter Ecosystem Matrix and Checklist #1271

@robertlong

Description

@robertlong

Currently we have a number of glTF exporters with partial support for glTF 2.0. It would be great if we could help artists find the right exporter for their pipeline and required features. We'd also like to help developers find the best projects for them to contribute to.

I'm compiling a matrix of exporters and their supported features. I could use the help of the community in building this matrix. I've created an exporter feature checklist for people to fill out and submit in this thread. I'll add it to the matrix and we can update it as these exporters mature. Hopefully, this pushes people to fill in the missing pieces of these exporters and we can enjoy a more robust exporter ecosystem.

Please let me know if there are items that should be added, removed, or changed in this list. My intention is to keep it high level enough that it isn't information overload, but detailed enough that you can find out if the exporter will work for you. Thank you!

glTF Exporters

Exporter Name .gltf/.bin .glb Morph Targets Skinned Mesh Buffer View and Accessor Reuse Mesh Instancing PBR Metallic Roughness PBR Specular Glossiness (Extension) Unlit Material (Extension) Additional Maps Multiple UV Sets Alpha Double Sided Materials Cameras Animation (TRS) Animation (Weights) Animation (Multiple) Draco Mesh Compression (extension) Extras Data Asset Info
glTF-Blender-Exporter ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ⚠️ ✔️ ✔️ ✔️ ✔️ ✔️
FBX2glTF ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️️ ⚠️
blendergltf ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
obj2gltf ✔️ ✔️ ⚠️ ⚠️ ✔️ ✔️
Babylon.js 3dsMax gltf exporter ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Babylon.js Maya gltf exporter ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Maya2glTF ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
UnityGLTF ⚠️ ✔️ ✔️ ✔️ ✔️ ⚠️
Sketchup glTF Export ⚠️ ✔️ ✔️ ✔️ ⚠️
COLLADA2GLTF ✔️ ✔️ ✔️ ⚠️ ⚠️ ✔️ ✔️ ✔️ ✔️ ✔️

Key:

  • ✔️ Full support
  • ⚠️ Partial Support
  • ❌ No Support
  • ❔ Needs Data

glTF Exporter Checklist

  • JSON Export (.gltf, .bin, .png/.gif/.jpg)
    The exporter can output a .gltf file, a .bin file, and images for each of the textures.
  • Binary Export (.glb)
    The exporter can output a single .glb file containing the glTF JSON data, buffer data, and textures.
  • Morph Targets
    The exporter outputs morph target information via primitive.targets and primitive.weights. This does not include animation of the weights.
  • Skinned Mesh
    The exporter outputs skins using the inverseBindMatrices, joints, and skeleton properties as well as the JOINTS and WEIGHTS vertex attributes.
  • Buffer View and Accessor Reuse
    The exporter reuses buffer views and accessors whenever possible. Ex. Vertex attributes are packed into a single buffer view and meshes with the same geometry, but different materials reuse accessors.
  • Mesh Instancing
    When multiple nodes have the same mesh, the exporter exports a single mesh definition and references it in each node.
  • PBR Metallic Roughness Material
    The exporter outputs the correct factors and textures for the pbrMetallicRoughness material.
  • KHR_matrials_pbrSpecularGlossiness
    The exporter outputs the correct factors and textures for the pbrSpecularGlossiness material.
  • KHR_material_unlit
    The exporter supports exporting unlit materials. The material has the correct fallback values.
  • Additional Maps
    The exporter outputs the correct factors and textures for the normal, occulsion, and emissive maps.
  • Multiple UV Sets
    The exporter can output materials which use multiple UV sets.
  • Alpha Coverage
    The exporter outputs the correct alphaMode, alphaCutoff and alpha value for the given material.
  • Double Sided Material
    The exporter can specify whether or not the material is double sided and outputs the correct doubleSided value.
  • Cameras
    The exporter supports exporting both perspective and orthographic cameras.
  • Animation (TRS)
    The exporter supports exporting animations of the translation, rotation, and scale properties of nodes. This includes joints in skinned meshes.
  • Animation (Weights)
    The exporter supports exporting animation of morph target weights.
  • Animation (Multiple)
    The exporter supports exporting multiple animations.
  • KHR_draco_mesh_compression
    The exporter supports exporting compressed meshes via the Draco mesh compression library.
  • Extras Data
    The exporter allows you to specify extras data on (at minimum) node objects for adding application specific metadata.
  • Asset Information
    The exporter outputs the correct glTF version, the generator name, and allows you to specify the copyright field.

Post template

# Exporter Name
- [ ] JSON Export (.gltf, .bin, .png/.gif/.jpg)
- [ ] Binary Export (.glb)
- [ ] Morph Targets
- [ ] Skinned Mesh
- [ ] Buffer View and Accessor Reuse
- [ ] Mesh Instancing
- [ ] PBR Metallic Roughness Material
- [ ] KHR_matrials_pbrSpecularGlossiness
- [ ] KHR_material_unlit
- [ ] Additional Maps
- [ ] Multiple UV Sets
- [ ] Alpha Coverage
- [ ] Double Sided Material
- [ ] Cameras
- [ ] Animation (TRS)
- [ ] Animation (Weights)
- [ ] Animation (Multiple)
- [ ] KHR_draco_mesh_compression.
- [ ] Extras Data
- [ ] Asset Information

If a feature is missing, please try to provide some details. If it has partial or no support please indicate that. Linking to specific Github issues would be even better!

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions