我是panda3d的新手,我正在使用一些'漫游的拉尔夫'代码检查碰撞:
在panda3d随附的"漫游拉尔夫"代码示例中,它说
# 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)