Panda3d 显示基地类错误



我刚刚在python上开始panda3d,直到panda3d文件夹中的 showbase.py 模块遇到问题(在站点包中。/home/pi/.local/lib/python3.5/site-packages) 我在树莓派 3B 上运行。Showbase.py 的位置是/home/pi/.local/lib/python3.5/site-packages/panda3d/direct/src/showbase)

法典:

from panda3d.direct.src.showbase import *
class Window(ShowBase):
def __init__(self):
Showbase.__init__(self)
game = Window()
game.run()

我不会显示 Showbase.py 因为它有 3025 行长:|

错误:

Traceback (most recent call last):
File "/home/pi/Desktop/Pandas3D/window.py", line 3, in <module>
class Window(ShowBase):
NameError: name 'ShowBase' is not defined

感谢您的任何帮助!

导入 ShowBase类的正确方法是从direct.showbase包内的 ShowBase 模块导入它:

from direct.showbase.ShowBase import ShowBase

注意模块被命名为ShowBase,其中的类也被命名为ShowBase,因此重复。 一个常见的错误是尝试导入模块而不是类。

从您的代码来看,您似乎已将direct源代码树复制到站点包内的panda3d包中。 这不是熊猫的使用方式。direct树应该是一个单独的包,并且不应该有一个干预src目录。

此外,您在Showbase.__init__中有一个大写错误,应该ShowBase.__init__

所以你需要使用一个超级函数并从showBase类继承

from direct.showbase.ShowBase import ShowBase
class Window(ShowBase):
def __init__(self):
super().__init__()
app = Window()
app.run()

试试看

相关内容

  • 没有找到相关文章

最新更新