使用 traverse() 在 Panda3D 中处理碰撞
Collision handeling in Panda3D with traverse()
我是 Panda3d 的新手,我正在使用一些 'roaming ralph' 代码来检查碰撞:
在panda3d附带的'roaming ralph'代码示例中,它说
# Normally, we would have to call traverse() to check for collisions.
# However, the class ShowBase that we inherit from has a task to do
# this for us, if we assign a CollisionTraverser to self.cTrav.
我用的是普通版的Showbase,怎么调用
traverse()
就像它说的那样?
意思是如果将CollisionTraverser实例赋值给base.cTrav
,或者self.cTrav
,就不需要每帧都调用traverse函数了。确实,漫游拉尔夫程序就是这样。
如果不是这种情况,例如,如果您将变量重命名为 self.traverser
,则必须向任务(例如现有移动任务)添加这样一行:
self.traverser.traverse(self.render)
我是 Panda3d 的新手,我正在使用一些 'roaming ralph' 代码来检查碰撞:
在panda3d附带的'roaming ralph'代码示例中,它说
# Normally, we would have to call traverse() to check for collisions.
# However, the class ShowBase that we inherit from has a task to do
# this for us, if we assign a CollisionTraverser to self.cTrav.
我用的是普通版的Showbase,怎么调用
traverse()
就像它说的那样?
意思是如果将CollisionTraverser实例赋值给base.cTrav
,或者self.cTrav
,就不需要每帧都调用traverse函数了。确实,漫游拉尔夫程序就是这样。
如果不是这种情况,例如,如果您将变量重命名为 self.traverser
,则必须向任务(例如现有移动任务)添加这样一行:
self.traverser.traverse(self.render)