Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2008.04.06;
Скачать: [xml.tar.bz2];

Вниз

Посмотреть на верх.   Найти похожие ветки 

 
akaValerius ©   (2007-01-11 15:10) [0]

Я тока щас заметил, когда еще и на стену смотрел, что при повороте на угол .. по оси Х
(на верх). Сцена трансформируется из прямоугольника в парал-грамм, и если
посмотреть на стену то картинка корявоужаснеправельная. Если на ось Z результат тож не очень,
и при том я должен смотреть только на стену. И я решил
отказаться от glRotate and glTranslate, а использовать
gluLookAt, но не знаю что дает вектор "UP" самое понятное
объяснение, что я слышал было "поменяйте там значения". По работе
с этм объяснением я понял что при смене "UP" сцена ресуется по другому.
Сот-но моно используя gluLookUp добиться желаемого результата. Помогите
с этой ботвой разобратся как зависят значения от "UP". Иль, как добиться
нормальной картинки при использовании glRotate. Please. У меня из-за
этого опять работа стала.


 
XProger ©   (2007-01-11 15:40) [1]

покажи код установок матрицы проекции и вида перед отрисовкой стены.


 
akaValerius ©   (2007-01-11 17:48) [2]

XProger

gluLookAt(-0.1, 0, 19-up, -0.1, -2, -11+z*1000, 0, 1, -1);
{***************************************************}
glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);

wglMakeCurrent(Canvas.Handle, hrc);
   glViewport(0, 0, ClientWidth, ClientHeight);
//glPushMatrix;
glloadidentity;
glEnable(GL_DEPTH_TEST);
gluPerspective(90,
ClientWidth/ClientHeight-1,
0.1,  100.0);
 //glFrustum(-0.5,0.5,-1,1,3,100);
    {glRotated(0+xs,0,1,0);
   glRotated(0+z,1,0,0);
   glTranslatef(0,0.1+jamp,-60+up);}

gluLookAt(-0.1, 0, 19-up, -0.1, -2, -11+z, 0, 1, -1);
{***************************************************}
glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
Здесь некоторые процедуры, как коментарии потому, что я пробую по разному. Но картинка все равно корявая. Это пример, код не много другой (там тексуры и се токое), но подскажи хотябы так.


 
Леон ©   (2007-01-11 18:24) [3]

хм.. может поможет :
 SinCos(Fphi, sp, cp );
 SinCos(Ftheta, st, ct );
 gluLookAt(Center[0] + FD*st*cp, Center[1] + FD*st*sp, Center[2] + FD*ct,
           Center[0]    , Center[1]    , Center[2]  ,
           0                 ,0                 ,1                  );

Fphi , FTheta, полярные углу под котрыми камера смотрит на точку Center
FD - расстоние от камеры до Center


 
akaValerius ©   (2007-01-11 18:58) [4]

Леон
Ok. Попробую.


 
akaValerius ©   (2007-01-11 19:08) [5]

Леон
Center[0,1,2]- че это за переменная, как она вычисляется, она меняется по ходу или нет? Опиши по подробней.


 
Леон ©   (2007-01-11 19:15) [6]

Center это массив, мрожно трактовать как вектор, указывающий на точку
(Линейная алгебра рулит )
center[0] = x, center[1] = y,..
задаешь сам

и еще,
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(...);
...
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(...)


 
akaValerius ©   (2007-01-11 19:21) [7]

Леон
И еще  sp, cp , st, ct - это че за переменные, и как они находятся.
FD по какой оси расстояние( иль по одной Z).


 
Леон ©   (2007-01-11 20:11) [8]

 sp, cp , st, ct - синусы, косинусы углов, находятся функциями SinCos
FD - расстояние по прямой, соединяющей камеру и точку center
(см. "полярная система координат")


 
akaValerius ©   (2007-01-11 20:20) [9]

Мож ты не большой исходничик отправишь, если те не влом конечно. А то у меня там все заросло всякой ботвой, а мне нужно принцип понять.


 
XProger ©   (2007-01-11 23:54) [10]

akaValerius, в [6] сообщении решение твоей проблемы...


 
akaValerius ©   (2007-01-12 14:29) [11]

XProger. Тобесь процедуру Леона не надо узать, дело
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(...);
...
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(...)

А че лучше юзать gluLookAt иль Rotate


 
akaValerius ©   (2007-01-12 15:03) [12]

Киньте мне please исходник, а то у меня все, как расло, так стены крючит и дальше


 
akaValerius ©   (2007-01-19 14:24) [13]

DevilDevil - вобщем твой исходник у меня не пашет, ну все равно я решил делать все сам. И уже решил проблему довольный пью пиво,а если бы использовал чужой код то не было бы наслаждения от проделанной работы.


 
Комбинатор   (2007-01-19 17:08) [14]

Почитай теорию по "управлению движением" и про матрицы косинусов......


 
akaValerius ©   (2007-01-20 12:30) [15]

Комбинатор
А где мне её надыбать?



Страницы: 1 вся ветка

Форум: "Игры";
Текущий архив: 2008.04.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.006 c
15-1203596855
art
2008-02-21 15:27
2008.04.06
Блокировка скаченных файлов...


11-1186936856
Isaev
2007-08-12 20:40
2008.04.06
Проблема цветов в TKOLEditBox


15-1203524290
TwentyThird
2008-02-20 19:18
2008.04.06
Люксембург легализовал эвтаназию.


15-1203880153
Аркадий_Т
2008-02-24 22:09
2008.04.06
24 февраля (т.е завтра) рабочий день?


15-1203641552
ЭРИКА
2008-02-22 03:52
2008.04.06
С ДНЕМ ЗАЩИТНИКА ОТЕЧЕСТВА





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский