我是Panda3D模块的初学者,所以我四处玩耍。我想在按下";w";。因此,我在init类中执行了此操作。
self.accept('w', self.forward)
现在我不知道应该在forward
函数中写些什么。
所以我会创建三个变量来存储相机的所有权,然后修改变量,最后改变相机的角度:
if key_map['up']:
self.camY = self.camY + 0.09
if key_map['down']:
self.camY = self.camY - 0.09
if key_map['right']:
self.camX = self.camX + 0.09
if key_map['left']:
self.camX = self.camX - 0.09
if key_map['space']:
self.camZ = self.camZ + 0.09
if key_map['shift']:
self.camZ = self.camZ - 0.09
# sets the camera posision
self.camera.setPos(self.camX, self.camY, self.camZ)
只是说我使用了一个键映射,然后根据按下的键调整了键映射,但相反,你可以将所有if语句转换为函数
def forward(self):
self.cam_x = self.cam_x + 1
self.camera.setPos(self.cam_x, 0, 0)
在init中,您需要设置的变量
self.cam_x = 0
这将使cam_x增加一,然后将相机位置设置为cam_x