Re: Реализация простой камеры.
ок, буду искать ошибку....спс))
|
Re: Реализация простой камеры.
Ура! Я сделал управление с клавы и мыши! Терь все как положено...
Теперь надо понять текстурирование... |
Re: Реализация простой камеры.
Гы. оказывается, сделал я неправильно. Я, так сказать, крутил весь с мир, а сама камеры была на месте...
Это оказывается неправильно... Правильно - это применять gluLookAt() ... но какие параметры и че - хз... Вот, кстати, нашел инфу об этой функции:
Мож кому-то понадобится... |
Re: Реализация простой камеры.
Данил
ну там 9 параметров 3 параметра ето x,y,z точки где стоит камера 3 параметра ето x,y,z точки куда смотрит камера 3 параметра ето x,y,z куда смотрит "верх" камеры ну типа чтобы камеру можно было вращать вокруг своей оси которая проходит через центр обьектива |
Re: Реализация простой камеры.
Ну я вроде как разобрался уже...
Разницы не заметил между отдельными функциями, и этим глуком gluLookAt ... Хех... Никто не знает, как повернуть объект вокруг себя? Есил поворасчивать вначале цикла, а потом по глобальным координатам переставлять - параша получается. Если вначалае переместить по глобальным координатам, а затем вертим, то объект поворачивается не вокруг своей оси, а вокруг 0, то есть по большому радиусу... Пытался методом тыка - не получилось... Код:
Method Draw() glRotated RotateSpeed, RotateX,RotateY,RotateZ А вот он мега аццкий код , вертящий объект... Но вот как его вокруг своей оси - хз... Вариант 1. При вызове функции поворота мы поворачиваем объект и как-нибудь записываем текущие координаты вариант 2. Вначале перемещаем и крутим объект. Потом закрепляем как-нибудь. И уже сново поворачиваем, но уже вокруг своей оси... вот... как именно - я хз... |
Re: Реализация простой камеры.
сначала перемещаем, потом крутим. вот кусок кода:
Код:
glPushMatrix(); |
Re: Реализация простой камеры.
Ура! наконец-то я сделал! HolyDel, спасиб те.
// Перемещаем относительно камеры glRotatef -scenerotY, 1,0,0 glRotatef scenerotX, 0,1,0 glTranslatef xtrans, 0, ztrans //Перемещаем относительно своих координат! glTranslatef x, y, z glRotated RotateSpeed, RotateX,RotateY,RotateZ Ура! Сейчас текстурами займусь... |
Re: Реализация простой камеры.
начало координат ВСЕГДА в камере. твой драгоценный gluLookAt ничо другого не делает кроме как перемещает и поворачивает МИР.
Цитата:
Если ты сначала повернеш мир, а потом его переместиш, то он у тебя переместится в другую точку (мир то уже перевернут). а вот если ты его сначала переместиш а потом перевернеш, то он переместится туда, куда тебе надо. |
Часовой пояс GMT +4, время: 20:48. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot