void keyPressed(unsigned char key, int x, int y) { if( key == 'g' ) CurrMode = ( CurrMode == M_2D )?M_3D:M_2D; if( key == 27 ) exit(0); if( key == 'w' ) { CameraPos += CameraView * 0.02; CameraView += CameraView * 0.02; CameraView = CameraView / CameraView.Length() * 255; } if( key == 's' ) { CameraPos += CameraView * -0.02; CameraView += CameraView * -0.02; CameraView = CameraView / CameraView.Length() * 255; } if( key == 'a' ) { CameraPos.print(); Vect<double> tmp = Vect<double>(3,0.0,1.0,0.0) % Vect<double>(3,CameraView[V_X],0.0,CameraView[V_Z]) ; tmp.print(); CameraPos += tmp / tmp.Length() * 2; CameraView += tmp / tmp.Length() * 2; CameraView = CameraView / CameraView.Length() * 255; } if( key == 'd' ) { CameraPos.print(); Vect<double> tmp = CameraView % Vect<double>(3,0.0,1.0,0.0) ; tmp.print(); CameraPos += tmp / tmp.Length() * -2; CameraView += tmp / tmp.Length() * -2; CameraView = CameraView / CameraView.Length() * 255; } if( key == 'o' ) glEnable(GL_ALPHA_TEST); if( key == 'p' ) glDisable(GL_ALPHA_TEST); }