我用Blender 3.0.0实现了一个2种颜色的简单模型(支持黄色的黑色喇叭(,我用*.0bj导出它。当我用3D查看器打开它时,我可以看到颜色出现。但是,当我用Python调用它时(我使用Pycharm 2021.3和3D引擎Panda3d 1.10.10(,模型看起来是白色的。此外,它不再是垂直的,而是水平的。请参阅所附图片。
使用3D Viewer
使用Pabda 3D
from panda3d.core import loadPrcFile, AmbientLight
loadPrcFile("config/conf.pc"(
从direct.showbase.showbase导入showbase
类MyGame(ShowBase(:
def __init__(self):
super().__init__()
pion = self.loader.loadModel("Models/Pion2.obj")
pion.setPos(0, 15, -1.5)
pion.reparentTo(self.render)
game=MyGame((
game.run((
你能告诉我如何用Panda3d在我的模型上获得我的两种颜色吗?
我不知道obj文件。但是如果你使用的是gltf或glb文件,那么你可以通过这个来获得纹理
1.pip安装panda3d gltf2.pip安装panda3d simplepbr
然后在main.py或其他中
导入simplepbr
在您的游戏类中
def __init__(self):
super().__init__()
simplepbr.init()
pion = self.loader.loadModel("Models/Pion2.glb") # or use gltf
pion.setPos(0, 15, -1.5)
pion.reparentTo(self.render)
完成这些操作后,你可以在模型中看到纹理
我对从Blender导出的Panda3D中的.obj
文件也有类似的体验。然而,我发现从Blender以.dae
格式导出纹理更有可能被保留。