Hi!!!
i make a fps camera in a 3d world but when i’m on below, my camera rotate to left on my moving mouse on right and vice versa.
I use this code to control the camera
md = base.win.getPointer(0)
x = md.getX()
y = md.getY()
rotVel = 0.4
if base.win.movePointer(0, base.win.getXSize()/2, base.win.getYSize()/2):
self.cam.setH(self.cam.getH() - (x - base.win.getXSize()/2)*rotVel)
self.cam.setP(self.cam.getP() - (y - base.win.getYSize()/2)*rotVel)
vel = 200
if (self.keys['forward']):
backward = self.cam.getNetTransform().getMat().getRow3(1)
backward.normalize()
self.cam.setPos(self.cam.getPos() + backward*(task.getDt()*vel))
if (self.keys['back']):
backward = self.cam.getNetTransform().getMat().getRow3(1)
backward.normalize()
self.cam.setPos(self.cam.getPos() - backward*(task.getDt()*vel))
if (self.keys['right']):
backward = self.cam.getNetTransform().getMat().getRow3(0)
backward.normalize()
self.cam.setPos(self.cam.getPos() + backward*(task.getDt()*vel))
if (self.keys['left']):
backward = self.cam.getNetTransform().getMat().getRow3(0)
backward.normalize()
self.cam.setPos(self.cam.getPos() - backward*(task.getDt()*vel))
if(self.keys['up']):
backward = self.cam.getNetTransform().getMat().getRow3(2)
backward.normalize()
self.cam.setPos(self.cam.getPos() + backward*(task.getDt()*vel))
if(self.keys['down']):
backward = self.cam.getNetTransform().getMat().getRow3(2)
backward.normalize()
self.cam.setPos(self.cam.getPos() - backward*(task.getDt()*vel))
why does this appening ?