Вниз
Скачать: CL | DM;

Завершение работы с GLUT   Найти похожие ветки 

 
Closer ©   (2004-02-09 15:47) [0]

Когда я закрываю окно созданое с помощю GLUT, процесс остаётся висеть в памяти. Как добиться нормального закрытия окна?


program TestGLUT;

uses
 Glut in "Glut.pas",
 GL in "GL.pas",
 GLu in "GLu.pas";

procedure Draw; cdecl;
const
 Alpha:Integer=0;
begin
 glClear(GL_COLOR_BUFFER_BIT);

 glLineWidth(3);
 glColor3f(0, 0.6, 0.9);

 glPushMatrix();
 glRotatef(alpha, 0, 0, 1);
 Alpha:=Alpha+4;
 if Alpha > 359 then Alpha:=0;
 glBegin(GL_LINES);
   glVertex2f(-0.5, 0.5);
   glVertex2f(0.5, -0.5);
 glEnd();
 glPopMatrix();

 glFlush();
 glutSwapBuffers();
end;

procedure Timer(Value:Integer); cdecl;
begin
 glutPostRedisplay();  // Redraw windows
 glutTimerFunc(40, Timer, 0); // Setup next timer
end;

procedure Visibility(State:Integer); cdecl;
begin

end;

procedure Reshape(Width,Height:Integer); cdecl;
begin
 glViewport(0, 0, width, height);
 glMatrixMode(GL_PROJECTION);
 glLoadIdentity();
 gluOrtho2D(-1, 1, -1, 1);
 glMatrixMode(GL_MODELVIEW);
end;

var
 Cmd:array [0..20] of PChar;
 Count:Integer;
 I:Integer;
 WinHandle:Integer;

begin
 for I:=0 to ParamCount do
   Cmd[i] := PChar(ParamStr(I));
 Count := ParamCount + 1;

 glutInit(@Count, @Cmd);
 glutInitWindowSize(800,600);
 glutInitWindowPosition(0,0);
 glutInitDisplayMode(GLUT_RGB or GLUT_DOUBLE);
 WinHandle:=glutCreateWindow("TestGLUT");
 glutDisplayFunc(@Draw);
 glutReshapeFunc(@Reshape);
 glutVisibilityFunc(@Visibility);
 glutTimerFunc(40,@Timer,0);

 glutMainLoop;
end.


P.S.
 Если я добавлю какой либо код после glutMainLoop, выполнится ли он?


 
ArchangelM   (2004-02-09 18:00) [1]

А зачем тут GLUT??
Тут и OpenGL хватит!!
Буквально строчек 20 дописать...


 
d   (2004-02-09 19:46) [2]

www.sulaco.co.za



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.021 c
3-1084621861
VVV
2004-05-15 15:51
2004.06.06
SQL


14-1084606809
Denis_ada
2004-05-15 11:40
2004.06.06
клиент – сервер для работы с файлами и папками


14-1085133857
Sanek_metaller
2004-05-21 14:04
2004.06.06
Opera


3-1084537217
Дмитрий
2004-05-14 16:20
2004.06.06
Отчеты в базах данных


1-1085389679
ПрогерШу
2004-05-24 13:07
2004.06.06
Как у класса создать свойство - массив?




   Наверх