![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() Суть проблемы - Пытаюсь реализовать перемещение объекта с помощью клавиатуры и мыши.(Как в играх от 3-го лица).
Клавиатура - движение вперед. Мышь - изменение угла(поворот влево - вправо). От измененного угла считаю координаты через sin и cos. Чего-то хорошего из этого не получилось. Каким путем можно решить эту проблему. |
#2
|
||||
|
||||
![]() А перевод з радиан в грады и наоборот пробовал? В Дельфи тригонометрические ф-ции считаются только для значений угла в радианах.
|
Этот пользователь сказал Спасибо YVitaliy за это полезное сообщение: | ||
It-s-me (07.02.2012)
|
#3
|
||||
|
||||
![]() Если исходить из предыдущего вопроса, то наверное ТС делает это в OpenGL. Там это выполняется командой glRotate.
Код:
glRotatef(Angle, 1, 0, 0); Код:
glRotatef(Angle, 1, 0, 0); glRotatef(Angle, 0, 1, 0); glRotatef(Angle, 0, 0, 1); Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#4
|
||||
|
||||
![]() Для реализации камеры я использую эти функции именно в таковом порядке:
glrotatef(zangle,0,0,0.0000000001); glrotatef(xangle,0.00000000001,0,0); glrotatef(yangle,0,0.0000000001,0); Как раз нормально |
#5
|
||||
|
||||
![]() Весьма редко потребуется именно такая точность поворота. На практике, чаще бывает нужно повернуть гораздо "резче".
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#6
|
||||
|
||||
![]() Но это не точность, это вектор оси
![]() |
#7
|
|||
|
|||
![]() Цитата:
Спасибо. Именно это я и не учел ![]() Теперь все работает. Да делал в openGL. Камеру реализовывал с помощью LookAt. |
#8
|
||||
|
||||
![]() Цитата:
|
#9
|
|||
|
|||
![]() Если нужно. Выложу.
|