2017-02-06 10 views
0

я пытаюсь двигать камеру с помощью Panda3D со стрелками, но я получаю сообщение об ошибке: функции:Panda3D движение камеры со стрелками

W = KeyboardButton.ascii_key('w') 
S = KeyboardButton.ascii_key('s') 
def moveTask(self, task): 
     is_down = base.mouseWatcherNode.is_button_down 
     dt = globalClock.getDt() 
     if is_down(W): 
      self.camera.setX(self.camera, -20 * dt) 
     if is_down(S): 
      self.camera.setX(self.camera, +20 * dt) 
     return task.cont 

и где я добавить задачу:

Traceback (most recent call last): 
    File "panda.py", line 67, in <module> 
    app.run() 
    File "/usr/share/panda3d/direct/showbase/ShowBase.py", line 3025, in run 
    self.taskMgr.run() 
    File "/usr/share/panda3d/direct/task/Task.py", line 517, in run 
    self.step() 
    File "/usr/share/panda3d/direct/task/Task.py", line 471, in step 
    self.mgr.poll() 
TypeError: moveTask() takes exactly 2 arguments (1 given) 

ответ

0

Ваш функция не связана с классом, поэтому не будет self.