void Angle_Body(float dt) {
		// IK test - moving body

		if(Input.GetSingleton().GetButtonState("camera","active")==Input.ButtonState.OFF) {
		    float a = buttons[BUTTONS_X_ROT_NEG] - buttons[BUTTONS_X_ROT_POS];
		    float b = buttons[BUTTONS_Y_ROT_NEG] - buttons[BUTTONS_Y_ROT_POS];
		    float c = buttons[BUTTONS_Z_ROT_NEG] - buttons[BUTTONS_Z_ROT_POS];
		    float a1=Math.max(Math.min(a,MAX_VEL),-MAX_VEL);
		    float b1=Math.max(Math.min(b,MAX_VEL),-MAX_VEL);
		    float c1=Math.max(Math.min(c,MAX_VEL),-MAX_VEL);
		    //System.out.println(""+a1+"\t"+b1+"\t"+c1);

		    if( a1 !=0 || b1 != 0 ) {
			    Vector3f forward=new Vector3f( body.forward );
			    forward.scale( a1 );
			    Vector3f sideways=new Vector3f( body.left );
			    sideways.scale( -b1 );
			    forward.add( sideways );
			    forward.normalize();
			    forward.scale(turn_stride_length * DEG2RAD * dt / 3.0f);
			    target.up.add( forward );
			    target.up.normalize();
		    }
		    
		    if( c1 != 0 ) {
		    	Vector3f left = new Vector3f( target.left );
		    	left.scale(c1 * turn_stride_length * DEG2RAD * dt / 6.0f);
		    	target.forward.add( left );
		    	target.forward.normalize();
		    	target.left.cross(target.up, target.forward);
		    }
		}
	}