Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];

Вниз

Завершение работы с 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 вся ветка

Форум: "Игры";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.043 c
1-1085294146
Alex
2004-05-23 10:35
2004.06.06
как напечатать апостроф?


14-1084863291
kull
2004-05-18 10:54
2004.06.06
Сравнительная характеристика систем контроля версий...


11-1074881761
TEmp_Name
2004-01-23 21:16
2004.06.06
Updater 3.1


14-1084720952
SergeyM
2004-05-16 19:22
2004.06.06
Как узнать Count на CD-ROM e


4-1082626644
BJValentine
2004-04-22 13:37
2004.06.06
WinMain





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский