glTF runtime loading and Editor import library for Unity
It focuses on speed, memory efficiency and a small build footprint.
Two workflows are supported
glTFast supports the full glTF 2.0 specification and many extensions. It works with Universal, High Definition and the Built-In Render Pipelines on all platforms.
See all details at the list of features/extensions.
The easiest way to install is to download and open the Installer Package
It runs a script that installs glTFast via a scoped registry.
Afterwards glTFast and further, optional packages are listed in the Package Manager (under My Registries) and can be installed and updated from there.
Add glTFast via Unity's Package Manager ( Window -> Package Manager ). Click the ➕ on the top left and choose Add package from GIT URL.
![Package Manager -> + -> Add Package from git URL][upm_install]
Enter the following URL:
To add support for Draco mesh compression, repeat the last step and also add the DracoUnity packages using this URL:
> Note: You have to have a GIT LFS client (large file support) installed on your system. Otherwise you will get an error that the native library file (dll on Windows) is corrupt!
glTFast 2.x requires Unity 2019.3 or newer. For older Unity versions see Legacy Installation.
You can load a glTF asset from an URL or a file path.
GltfAssetcomponent to a GameObject.
var gltf = gameObject.AddComponent(); gltf.url = "https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/Duck/glTF/Duck.gltf";
See Runtime Loading via Script in the detailed documentation for instructions how to customize the loading behaviour via script.
The loading behavior can be highly customized:
See the Documentation for details.
To convert your glTF asset into a native Unity prefab, just move/copy it and all its companioning buffer and texture files into the Assets folder of your Unity project. It'll get imported into the Asset Database automatically. Select it in the Project view to see detailed settings and import reports in the Inspector. Expand it in the Project View to see the components (Scenes, Meshes, Materials, AnimationClips and Textures) that were imported.
❗ IMPORTANT ❗
glTFast uses custom shaders that you have to include in builds in order to make materials work. If materials are fine in the Unity Editor but not in builds, chances are some shaders (or variants) are missing.
Read the section Materials and Shader Variants in the Documentation for details.
Find plans for upcoming changes at the milestones.
Contributions like ideas, comments, critique, bug reports, pull requests are highly appreciated. Feel free to get in contact if you consider using or improving glTFast.
Thanks to Embibe for sponsoring the development of skin support! ❤️
Copyright (c) 2020-2021 Andreas Atteneder, All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use files in this repository except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Unity is a registered trademark of Unity Technologies.
Khronos® is a registered trademark and glTF™ is a trademark of The Khronos Group Inc.