Форум: "Игры";
Текущий архив: 2004.07.11;
Скачать: [xml.tar.bz2];
ВнизОпределение текущего положения... так сказать начала координат Найти похожие ветки
← →
AxxxE (2004-03-11 14:38) [0]Или как это называется в OpenGL? Вообщем то, что изменяется glTranslate"ом и glRotate"ом.
← →
AxxxE (2004-03-13 12:42) [1]Ну должны же быть такие функции в OpenGL!?
← →
марсианин © (2004-03-18 00:22) [2]изменяется текущая система координат
и только..
представ столб, преставь себя стоящего на некотором расстоянии. Столб будет стоять на своем месте какую бы ты систему не выбирал. у него есть неизменные глобальные координаты. Ты стоишь и у тебя тоже есть глобальные координаты. Вот ты стоишь и смотришь на него. ты видишь его в своей локальной системе координат. т.е. ты можешь придумать свою С.К. и поставить себя ее в центр. Сделал пару шагов - аналог glTranslatef. Столб приблизился. т.е. в твоей локальной С.К. его координаты изменились. угу?
с поворотами аналогично.
и вот ты решил поставить точку.. поставить ее, указывая для нее свои координаты, локальные.
ОГЛ сразу же перемножает эти координаты на текущую матрицу, получает ее координаты в глобальной с.к.; глобальные координаты умножаются на матрицу проекции и получаем экранные координаты, кидаем точку в буффер кадра, если не отсекается...
вот так на пальцах..
← →
AxxxE (2004-03-19 19:56) [3]Ты не совсем понял вопрос.
>ОГЛ сразу же перемножает эти координаты на текущую матрицу
А как он их, собсно, перемножает?
← →
марсианин © (2004-03-19 23:54) [4]Шо как? формулу написать чтоль?..
← →
AxxxE (2004-03-20 12:57) [5]Именно! Мне надо получить эти координаты либо вычислениями, либо через саму ОпенГЛ.
← →
с (2004-03-26 16:14) [6]получаешь текущую матрицу, например так
var m:array[0..3, 0..3] of GLFloat;//матрица 4х4
..........
glGetFloatv(GL_MODELVIEW_MATRIX, @m);
//есть еще и GL_PROJECTION_MATRIX
и умножаешь вектор на эту матрицу, можно вручную
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2004.07.11;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.032 c