不幸的是,我是Python和Panda3D的初学者。到目前为止,我所做的就是尝试Panda3D功能,并以如下代码结尾构建一些示例世界:
base = ShowBase()
world = World()
base.run()
是否可以在另一个线程中启动Panda3D,同时让主线程为Panda3D世界中的对象计算运动数据?因此,该程序的主要任务是计算,此外,Panda3D世界还应以图形方式显示进度。
我试图让单独的线程执行上面的代码,但是我的主线程计算(分段错误)和Panda3D窗口(黑色窗口,无响应)都崩溃了。
class myThread (threading.Thread):
def __init__(self):
threading.Thread.__init__(self)
def run(self):
base = ShowBase()
world = World()
base.run()
t1 = myThread()
t1.start()
它们如何同时运行,以便两个线程之间可以通信?
答案 0 :(得分:0)
您使用的是direct.stdpy而不是python线程包吗?
请参见https://docs.panda3d.org/1.10/python/programming/threading