Skip to content

Animation Compression Library glTF toolkit

License

Notifications You must be signed in to change notification settings

nfrechette/acl-gltf

Repository files navigation

CLA assistant Build status Build Status Sonar Status GitHub license Discord

Animation Compression Library glTF toolkit

This toolkit contains a tool to convert compress and decompress glTF animations by using the Animation Compression Library. In time, a proper glTF extension will hopefully be standardized.

For the time being, acl-gltf only serves as a reference and toy. Sadly, glTF is not a suitable file format for a pipeline. It is not possible for a standalone tool to safely process a glTF file without knowing about and supporting every possible extension used in the wild. As such, acl-gltf leaves a lot of unused metadata in its output and no raw data is freed to ensure maximum safety.

===> THIS TOOL IS NOT SUITABLE FOR PRODUCTION USE! <===

Until an ACL extension is standardized, it is recommended to use this tool as inspiration to see how to compress glTF animations. As such, it is merely a proof of concept.

Supported platforms

  • Windows (VS2015, VS2017, VS2019) x86 and x64
  • Windows VS2019 with clang8 x86 and x64
  • Linux (gcc5, gcc6, gcc7, gcc8, gcc9) x86 and x64
  • Linux (clang4, clang5, clang6, clang7, clang8, clang9) x86 and x64
  • OS X (Xcode 8.3, 9.4, 10.3) x86 and x64
  • OS X (Xcode 11.2) x64

The above supported platform list is only what is tested every release but if it compiles, it should work just fine.

Runtime decompression can be implemented in C++ with ACL and in Javascript with acl-js.

Getting started

The toolkit executables currently need to be built by hand with CMake. However, if you wish to run the unit tests or to contribute to acl-gltf head on over to the development setup section in order to setup your environment and make sure to check out the contributing guidelines.

External dependencies

You don't need anything else to get started: everything is self contained. See here for details.

License, copyright, and code of conduct

This project uses the MIT license.

Copyright (c) 2019 Nicholas Frechette & contributors

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.