|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
08.01.2013, 12:14 | #1 |
Новичок
Джуниор
Регистрация: 06.01.2013
Сообщений: 2
|
Вращение камеры вокруг точки
Здравствуйте. Пытаюсь заставить камеру крутиться вокруг точки в пространстве при помощи сферических координат. Вот алгоритм:
phi=atan2(vCameraPos.z,vCameraPos.x ); theta=atan2(vCameraPos.y,sqrt(vCame raPos.x*vCameraPos.x+vCameraPos.z* vCameraPos.z)); vCameraPos.x = vPoinPos.x + dist * cos(phi) * cos(theta); vCameraPos.y = vPoinPos.y + dist * sin(theta); vCameraPos.z = vPoinPos.z + dist * cos(phi) * sin(theta); gluLookAt(vCameraPos.x, vCameraPos.y, vCameraPos.z, vPoinPos.x, vPoinPos.y, vPoinPos.z, 0, 1, 0); где dist - это расстояние от камеры до точки, phi и theta - углы. Таким образом меняя угол, я меняю координаты камеры в пространстве, но они изменяются несколько не правильно (камера движется вообще непонятно как ). В чём ошибка? Прикладываю exe файл проекта. |
08.01.2013, 13:01 | #2 | ||
Участник клуба
Регистрация: 30.07.2009
Сообщений: 1,601
|
Цитата:
Цитата:
Учитывайте направление осей в OpenGL Код:
Код:
Последний раз редактировалось _PROGRAMM_; 08.01.2013 в 13:07. |
||
08.01.2013, 13:59 | #3 |
Новичок
Джуниор
Регистрация: 06.01.2013
Сообщений: 2
|
Спасибо огромное, _PROGRAMM_! Всё получилось
Если интересно, вот исполняемый файл: |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вращение многоугольника вокруг заданной точки | Mazahacka1 | Помощь студентам | 10 | 22.05.2012 19:08 |
Вращение камеры вокруг точки | jetei | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 2 | 11.02.2012 12:48 |
Вращение камеры вокруг своей оси [OpenGL] | russian-stalker | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 4 | 14.04.2011 21:03 |
Вращение вокруг произвольно оси | mens-evgenij | Помощь студентам | 3 | 21.03.2009 15:42 |
Вращение луны вокруг Земли | [LOL] | Помощь студентам | 4 | 19.06.2007 21:14 |