Конференция "Игры" » Преобразовать кооринаты.
 
  • @!!ex © (04.07.07 12:37) [0]
    Делаю разнообразные координатные преобразования в OGL.
    Есть некоторая точка, которая рисуется уже преобразовання.
    Мне нужно получить ее координаты, в исходной системе координат.
    Тоесть скажем делаю так:
    glRotate();
    glTranslate();
    glRotate();
    glBegin(GL_POINTS);
    glvertex3f(0,0,0);
    glEnd();

    Какие у точки координаты в исходной системе?
    Пробовал получать матрицу вида и на нее умножать, не получается:
    NewPoint:=MultiplyMatrixVector(Transpose(Model_View_matrix),Point);
  • Dib@zol © (04.07.07 12:49) [1]
    Попробуй ещё потом на GL_PROJECTION домножать они походу повязаны друг на друга.
  • @!!ex © (04.07.07 16:03) [2]
    Кстати да...
    Возникла другая проблема....
    Мне надо не в исходной системе координат:
    Потому что после умножения на текущую матрицу я получаю результат в оконных координатах, а нао в координатах камеры.
    Тоесть должно быть так:
    Установить камеру.
    Получить матрицу 1.
    Установить систему координат.
    Получить матрицу 2.

    Как из матрицы 2 убрать все преобразования матрицы 1???
  • Dib@zol © (04.07.07 16:11) [3]
    Наверняка я чёнить не понимаю, но просто в порядке бреда:

    glPushMatrix
     Установить систему координат.
     Получить матрицу 2
    glPopMatrix;
    Установить камеру.
    Получить матрицу 1.
  • @!!ex © (04.07.07 16:14) [4]
    Да я наверно объясняю криво.
    Придумал как можно попробовать решить задачу другим способом.
 
Конференция "Игры" » Преобразовать кооринаты.
Есть новые Нет новых   [134431   +10][b:0][p:0]