![]() |
|
Модераторы: Rickert, Alexeis, BorisVorontsov |
![]()
|
|
| besionok |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 20.5.2008 Репутация: нет Всего: нет |
добрый день, недавно начал программировать с Opengl.
Может кто подсказет, как сделат анимированный переход viewpointov в Opengl? За исходник или фрагмент отдельная благодарность |
|||
|
||||
| Solomon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 23.1.2006 Где: Украина Киев Репутация: нет Всего: 2 |
можешь более подробно описать что тебе требуеться? -------------------- Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром... Соломон 2008 |
|||
|
||||
| besionok |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 20.5.2008 Репутация: нет Всего: нет |
есть 3 камеры, надо что бы при переключении камеры с одной на другую, они не перепрыгивали, а плавно переходили... |
|||
|
||||
| Solomon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 23.1.2006 Где: Украина Киев Репутация: нет Всего: 2 |
Камера одна... просто она может находиться в разных позициях... вот и смотришь.. допустим она у тебя в позиции X1 Y1 Z1 тебе надо переместить её в позицию X2, Y2, Z2.. береш и небольшим приростом координат перемещаешь её туда. Т.е. не сразу присвоением новой позиции, а приростом необходимых координат... по другому никак, если я правильно поныл постановку вопроса
-------------------- Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром... Соломон 2008 |
|||
|
||||
| besionok |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 20.5.2008 Репутация: нет Всего: нет |
если можно фрагментик кода, а то не допонимаю :( |
|||
|
||||
| baldina |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: нет Всего: 101 |
камера это совокупность её положения (translation) и направлением (rotation).
переход из одного состояния в другое выполняется при помощи интерполяции. в простейшем случае можно линейно интерполировать матрицу трансформации, однако при этом камера будет не плавно переходить из одного положения в другое, а совершать сложные движения. лучше всего отдельно интерполировать позицию и поворот. поворот, в свою очередь - тоже матрица, 3х3 и с ней такие же проблемы интерполяции. Поэтому (и не только) повороты часто хранят в кватернионах. Кватернион легко построить из матрицы поворота и наоборот, а интерполяция кватернионов производится обычным образом (еще лучше - использовать сферическую линейную интерполяцию, тогда поворот будет наиболее естественным). Посмотри http://www.flipcode.com/documents/matrfaq.html, там все это есть. параметрически линейная интерполяция от а к b определяется так:
Таким образом плавный переход от точки p1 к p2 за 10 шагов
Это сообщение отредактировал(а) baldina - 20.5.2008, 13:56 |
||||
|
|||||
| besionok |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 20.5.2008 Репутация: нет Всего: нет |
да, но камера ето 3 координаты и после каждой изменения каздой надо отображат камеру? |
||||||
|
|||||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: нет Всего: 101 |
да, так и получится движение
Добавлено через 5 минут и 5 секунд точнее - надо отображать после каждого изменения совокупности данных, определяющих камеру, типа
но это только для примера, лучше кватернионом поворот представлять, см. выше Добавлено через 12 минут и 7 секунд тут хороший готовый пример http://nehe.gamedev.net/data/lessons/lesso...on_Camera_Class |
|||
|
||||
![]()
|
| Вы можете найти полезным что... | |
|
|
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |