This project adds glTF loading capabilities to Panda3D. One long-term goal for this project is to be used as a reference for adding a builtin, C++ glTF loader to Panda3D. If and when Panda3D gets builtin support for glTF, this module will go into maintenance mode and be used to backport glTF support to older versions of Panda3D.
- Adds support for native loading of glTF files
- Supports glTF 2.0
- Supports binary glTF
- Includes support for the following extensions:
- KHR_lights (deprecated in favor of KHR_lights_punctual)
- Ships with a
gltf2bamcli-tool for converting glTF files to BAM
- Ships with
gltf-viewerfor viewing files (including glTF) with a simple PBR renderer
Use pip to install the
pip install panda3d-gltf
To grab the latest development build, use:
pip install git+https://github.com/Moguri/panda3d-gltf.git
panda3d-gltf ships with a Python file loader (requires Panda3D 1.10.4+), which seamlessly adds glTF support to Panda3D's
This does not add support to
pview, which is a C++ application that does not support loading Python file loaders.
pview, use the
gltf-viewer that ships with
For those that need to support Panda3D 1.10.3 or lower,
panda3d-gltf also supplies a
patch_loader() function to monkey-patch glTF support to
import gltf class App(ShowBase): def __init__(self): ... gltf.patch_loader(self.loader) ...
On Panda3D 1.10.4+, this function will leave
self.loader alone in favor of relying on the Python file loader.
To convert glTF files to BAM via the command line, use the supplied
gltf2bam source.gltf output.bam
panda3d-gltf ships with
This is a simple viewer (like
pview) to view glTF (or any other file format support by Panda3D) with a simple, PBR renderer.
panda3d-gltf has not reached a 1.0 release, its API should not be considered "stable."
However, this mostly applies to internals, and effort will be put into keeping the
gltf2bam API from breaking.
patch_loader() will also be kept stable, but will eventually be phased out in favor of the Python file loader.
python setup.py test