用于panda3d的gltf实用程序
panda3d-gltf的Python项目详细描述
panda3d gltf
该项目将gltf加载功能添加到panda3d。 这个项目的一个长期目标是作为一个参考添加一个构建,C++GLTF加载器到PANDA3D。 如果并且当panda3d获得gltf的内置支持时,此模块将进入维护模式,并用于将gltf支持反向移植到panda3d的旧版本。
功能
- 添加对本地加载gltf文件的支持
- 支持GLTF 2.0,不包括变形目标
- 支持二进制gltf
- 包括对以下扩展的支持:
- KHR_U灯(不推荐使用KHR_U灯,因为KHR_U灯准时)
- 搅拌机物理
- 附带一个用于将gltf文件转换为bam的
gltf2bam
cli工具 - 与
gltf-viewer
一起提供,用于使用简单的pbr渲染器查看文件(包括gltf)
安装
使用pip安装panda3d-gltf
包:
pip install panda3d-gltf
要获取最新的开发版本,请使用:
pip install git+https://github.com/Moguri/panda3d-gltf.git
用法
自然负荷
panda3d-gltf
附带一个python文件加载程序(需要panda3d 1.10.4+),它无缝地将gltf支持添加到panda3d的Loader
类中。
对于那些需要支持panda3d 1.10.3或更低版本的用户,panda3d-gltf
还提供了一个patch_loader()
函数给monkey patch gltf支持ShowBase.loader
:
importgltfclassApp(ShowBase):def__init__(self):...gltf.patch_loader(self.loader)...
在panda3d 1.10.4+上,此函数将保留self.loader
单独使用,以支持依赖python文件加载程序。
命令行
要通过命令行将gltf文件转换为bam,请使用提供的gltf2bam
工具:
gltf2bam source.gltf output.bam
观众
panda3d-gltf
随gltf-viewer
一起提供。
这是一个使用简单的pbr渲染器查看gltf(或panda3d支持的任何其他文件格式)的简单查看器(如pview)。
API稳定性
由于panda3d-gltf
尚未达到1.0版本,因此其api不应被视为“稳定”。
然而,这主要适用于内部,并且将努力防止gltf2bam
api崩溃。
patch_loader()
也将保持稳定,但最终将逐步淘汰,取而代之的是python文件加载器。
运行测试
python setup.py test