![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
(OpenGL) вращение и перемещение объекта в glCallList(ListID)
loto © (2003-05-28 20:49:00)
Требуется объект в
glCallList(ListID):
1) повернуть на угол U1
2) переместить на (X1,Y1,Z1)
3) повернуть на угол U2
4) переместить на (X2,Y2,Z2)
С помощьюglRotateиglTranslateперемещается и поворачивается СИСТЕМА КООРДИНАТ, а мне надо издеваться над объектом вglCallList(ListID).
KefiR (2003-06-05 22:33:00) [1]
glPushMatrix;
...//Твои преобразования
glPopMatrix;
elf_123 (2003-05-30 23:55:00) [2]
Кстати есть функция glMatrixMode(MODE);
где MODE =
GL_PROJECTION
GL_MODELVIEW
GL_TEXTURE
Которые позволяют "издеваться" над системой кординат для положения наблюдателя, построения объекта и текстуры.
Пост Скриптум: Перед CallList сделай glMatrixMode(GL_MODELVIEW); glRotate..., glTranslate и тогда выводи объект
Asteroid (2003-05-29 02:23:00) [3]
> loto (28.05.03 21:36)
LoadMatrix, по-моему, в листах не сохраняется. А как ей пользоваться ты уже написал.
ION T (2003-05-29 00:33:00) [4]
А в чем собственно разница между перемещением объекта или системы координат? Просто обратные значения бери и всё...
loto (2003-05-28 21:36:00) [5]
var
q:array[0..15]of GLfloat;
begin
q[ 0]:=1; q[ 4]:=0; q[ 8]:=0; q[12]:=0;
q[ 1]:=0; q[ 5]:=1; q[ 9]:=0; q[13]:=0;
q[ 2]:=0; q[ 6]:=0; q[10]:=1; q[14]:=0;
q[ 3]:=0; q[ 7]:=0; q[11]:=0; q[15]:=1;
glLoadMatrixf(@q);
end;
Как пользоватьсяglLoadMatrixf?
Juster~ (2003-05-28 21:16:00) [6]
если тебе это надо, тогда лучше не создавай листы