движение камеры
Все получилось кроме стрейфа. Влево - вправо - работает превосходно, а вот вверх-вниз реализовать не могу. Если можно подскажите плз. Исходник плилагаю.
Спасибо.
Требуется осуществлять поворот камеры (gluLookAt) по плоскости XoY, получается что осью вращения является ось Z. Так же должно быть вращение в строго вертикальном направлении не зависимо от угла поворота по оси Z как в современных САПРах без ограничения на угол поворота. Выложенный мной выше пример ограничивает вращение... Как быть? мозг уже кипит...
Спасибо.
Выкинь gluLookAt, заюзай кватернионы, через них удобнее, имхо.
// местоположение камеры
CameraX=PlayerX+CameraDist*sin(CameraPhi*3.14/180);
CameraY=PlayerZ+CameraDist*cos(CameraPhi*3.14/180);
CameraZ;// положение по высоте
// PlayerX,PlayerY,PlayerZ - точка куда смотрим
gluLookAt(CameraX,CameraY,CameraZ,
PlayerX,PlayerY,PlayerZ,
0,0,1);