@property<EOL><INDENT>def view_matrix(self):<DEDENT>
<EOL>now = time.time()<EOL>t = max(now - self._last_time, <NUM_LIT:0>)<EOL>self._last_time = now<EOL>if self._xdir == POSITIVE:<EOL><INDENT>self.position += self.right * self.velocity * t<EOL><DEDENT>elif self._xdir == NEGATIVE:<EOL><INDENT>self.position -= self.right * self.velocity * t<EOL><DEDENT>if self._zdir == NEGATIVE:<EOL><INDENT>self.position += self.dir * self.velocity * t<EOL><DEDENT>elif self._zdir == POSITIVE:<EOL><INDENT>self.position -= self.dir * self.velocity * t<EOL><DEDENT>if self._ydir == POSITIVE:<EOL><INDENT>self.position += self.up * self.velocity * t<EOL><DEDENT>elif self._ydir == NEGATIVE:<EOL><INDENT>self.position -= self.up * self.velocity * t<EOL><DEDENT>return self._gl_look_at(self.position, self.position + self.dir, self._up)<EOL>
:return: The current view matrix for the camera