Форум: "Игры";
Текущий архив: 2006.04.16;
Скачать: [xml.tar.bz2];
ВнизOpenGL движение и вращение камерой в 3D Найти похожие ветки
← →
Drimmon (2005-09-28 18:07) [0]Расскажите, как управлять камерой в 3D (имитация движения корабля в космосе)?
Желательно по шагам:
1) Нажатии клавиши поворота (как задаются углы крена, рысканья, тангаж);
2) Нажатии клавиш перемещения (как задавать координаты камеры);
3) Предварительные расчеты;
4) Отрисовка кадра;
В интернете много информации об этом (углы Эйлера, Матрицы, Кватернионы), но практической реализации я не нашел. К тому же эти способы комбинируют кто, как хочет.
Помогите разобраться.
← →
NewWonder © (2005-09-28 18:18) [1]Краснова в зубы и вперёд (с) me :)
← →
NewWonder © (2005-09-28 18:20) [2]1) glRotatef
2) glTranslatef
3) uses Math;
Обо всём подробно рассказано в книге Михаила Краснова. Советую приобрести и вопросы пропадут.
← →
Drimmon (2005-09-28 19:08) [3]Хочется посмотреть на практическую реализацию. Вы можете помочь?
← →
XProger © (2005-09-28 19:13) [4]http://xproger.mirgames.ru/?id=1&doc=camera
Примеры игр с использованием этой камеры там же на сайте...
← →
Drimmon (2005-09-29 20:10) [5]XProger, спасибо. Интересные работы.
Но вот какой вопрос:
В данной работе, если поднять камеры вверх, то вращение в стороны не происходит. Вместо этого персонаж вращается вокруг своей оси.
Как сделать, чтобы игрок поворачивал голову в стороны в независимости от того, смотрит ли он прямо или вверх (как в симуляторах полетов)?
← →
XProger © (2005-09-29 22:55) [6]Соответственно умножать матрицы не ZXY, а ZYX если я правильно тебя понял :)
← →
Drimmon (2005-09-30 11:28) [7]Правильно ли я понял?
Если мы управляем самолетом от первого лица и выполняем фигуры высшего пилотажа, то при вращении, в определенные моменты времени очередность матриц в произведении меняется? А выбор этой очередности зависит от текущих углов поворота.
Если да то, какие? И не будет ли рывков при смене очередности множителей?
← →
XProger © (2005-09-30 13:13) [8]Очерёдность всегда постоянна
← →
Drimmon (2005-10-03 20:40) [9]Попробовал. Получилось. Но вращение по вертикали ограничено 180 градусами, т.е. мертвую петлю не сделаешь. =)
Вчем причина этого?
← →
Drimmon (2005-10-03 20:48) [10]Извините за последний вопрос. =)
Стормозил. Пора отдохнуть от компа.
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2006.04.16;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.082 c