panda3d库无法导入“.glt” 3d文件。
代码块:
from direct.showbase.ShowBase import ShowBase
from panda3d.core import WindowProperties
class Game(ShowBase):
def __init__(self):
ShowBase.__init__(self)
self.scene = self.loader.loadModel("models/environment")
self.properties = WindowProperties()
self.properties.setSize(1200, 650)
self.win.requestProperties(self.properties)
self.get_in=self.loader.loadModel("untitled.glb")
if __name__=="__main__":
game = Game()
game.run()
(此代码块中,untitled.glb文件在同一根目录下。)
我的思路主要是建立一个窗口然后直接导入在同一根目录下的.glt3d文件。但是运行不成功,虽然有窗口,但没有建模好的物体,所以我想知道是我的代码写的有问题还是panda3d不支持导入.glt 3d文件,或其他问题。
操作系统:Windows 10
引用 皆我百晓生 小程序回复内容作答:
根据Panda3D的官方文档,Panda3D库自身并不支持直接导入.glt(glTF)文件。但是,你可以使用一个叫做"gltf"的扩展库来实现加载gltf文件的功能。这个扩展库可以通过Pip安装。
请按照以下步骤进行操作:
pip install gltf
gltf
:import gltf
然后,你可以使用以下代码加载和显示gltf文件:
from direct.showbase.ShowBase import ShowBase
import gltf
class Game(ShowBase):
def __init__(self):
ShowBase.__init__(self)
self.scene = self.loader.loadModel("models/environment")
self.scene.reparentTo(self.render)
self.get_in = gltf.loadModel("untitled.glb")
self.get_in.reparentTo(self.render)
if __name__ == "__main__":
game = Game()
game.run()
请确保你的gltf文件和其他资源文件都在正确的路径下。