Имея камеру, расположенную в 3D кубе в display
:Перемещения камеры относительно перспективного направления в gluLookAt
public void display(GLAutoDrawable drawable) {
...
glu.gluLookAt(eyeX, eyeY, eyeZ, centerX, centerY, centerZ, upX, upY, upZ);
...
}
Камера взгляд на точке - (centerX, centerY, centerZ)
.
Я хочу переместить его относительно его направления (вперед, назад, вправо, влево).
Какова операция, которую я должен выполнить на телефонах eye
и center
, чтобы переместить камеру в соответствии с center
(для каждой из указанных сторон)?
Edit:
мне не нужна реализация, только концепция.
Спасибо, можете ли вы описать, что такое операция на 'center' и' eye'? – URL87
Посмотрите на метод Move_Camera (скорость поплавка) (вы должны знать, что vVector - это расстояние между позицией камеры и тем, где она смотрит). Если вам нужно учиться на основах, я бы предложил вам этот http: // www. morrowland.com/apron/tut_gl.php и этот http://nehe.gamedev.net/tutorial/loading_and_moving_through_a_3d_world/22003/ (его C++, но его легко перевести) – Nicola