{ This Code Was Created By Jan Koci 2001 Visit My Site At koci.opengl.cz } program BaColl; uses Forms, Windows, OpenGL, BaColl_f in 'BaColl_f.pas' {Form1}, K3dMath in 'K3dMath.pas', RenderThread in 'RenderThread.pas'; //Procedura, ktera vola InitScene pro nastaveni pocatecnich hodnot aplikace procedure SetupRender; begin InitScene; end; //Procedura, ktera vola RenderScene (bezi v nekonecne smycce diky Threadu) procedure RenderScene; begin DrawScene; end; //Precedura, ktera se vola pri skonceni aplikace procedure DoneScene; begin wglDeleteContext(RC); //Vymaze renderovaci kontext KThread.Done; //Vymaze Thread end; {$R *.RES} begin //Vytvor Thread (Thread je oddeleny proces ve kterem bezi rendering objektu. //Pokud by Thread nebyl aktivovan, pri jakekoli manipulaci s tlacitky by se //animace zastavovala) KThread:=TRenderThread.Create(True); InitOpenGL; //Inicializace OpenGL knihoven (OpenGL32.dll, GLU32.dll) Application.Initialize; //Inicializace Aplikace Application.CreateForm(TForm1, Form1); //Inicializace Form1 SetupRender; //Nastav pocatecni hodnoty aplikace //Vse co obsahuje RenderScene nastav jako oddeleny proces KThread.RenderScene:=RenderScene; KThread.Run; //Aktivuje Thread; Application.Run; //Aktivuje Aplikaci DoneScene; //Po skonceni aplikace volani DoneScene end.