Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите новичку в OpenGl [Delphi, Windows]


X'pro*inviZ ©   (2004-11-09 10:58:00) 

Это типа вопрос? Ну ладно, можешь и предоставить.

З.Ы.
Блин, вот начал OpenGL изучать.
С одной стороны интересно - новое что-то изучать.
С другой - ну иногда бывает вообще хрен пойми, что:
Сначала, конечно, разбираюсь с простыми примерами, т.к. изучаю полностью с нуля. Но вот здесь уже целых полчаса не могу догнать!!!

Вот, скажем, кусок очень простого кода.


procedure DrawScene;
var
 st:dword;
begin
 st:=GetTickCount;
 glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
 DrawSphere(0,0,0,0);
 DrawSphere(3,0,0,0.5);
 glFinish;
 SwapBuffers(ghDc);
 frametime:=GetTickCount-st;
end;

procedure DrawSphere(x,y,z,RotAngle:GLFloat);
var
 Sphere:GluQuadricObj;
begin
 glPushMatrix;
 glTranslatef(x,y,z);
 glRotatef(rotangle,0,0,1); //не работает, блин, ни хрена
 Sphere:=gluNewQuadric;
 glColor3f(1.0,0.0,0.0);
 gluQuadricDrawStyle(Sphere, GLU_FILL);
 gluSphere(Sphere,1,20,20);
 gluDeleteQuadric(Sphere);
 glPopMatrix;
end;


По идее, вторая сфера должна вертеться (вокруг первой на полградуса за один кадр, так нет, на месте стоит, в подобном примере все нормально работает).
Если glRotatef вынести за блок glPushMatrix...glPopMatrix, то все нормально, вертится, но так не пойдет - в этом случае первая сфера вертится тоже.


DeadMeat   (2004-11-09 14:05:00) [1]

Ну дык и не будет крутиться. Ты ведь сохраняешь первоначальное состояние, а потом восстанавливаешь. Между ними, ты делаешь поворот лишь на одно значение, которое всегда одинаково. Может в другом примере вместо 0.5 переменная стоит?


X'pro*inviZ   (2004-11-09 11:01:00) [2]

Блин, первые две строчки вопроса - это глюк, забыл удалить. Это я в другой форуме ответ писал и методом Ctrl-C - Ctrl-V его в этот форум. Теги подправил, а это не убрал.


X'pro*inviZ   (2004-11-09 11:01:00) [3]

Блин, первые две строчки вопроса - это глюк, забыл удалить. Это я в другой форуме ответ писал и методом Ctrl-C - Ctrl-V его в этот форум. Теги подправил, а это не убрал.


Наверх

Титульная страница Поиск, карта сайта Написать письмо