Open GL in Delphi. Часть  5. GLAux

Previous  Top  Next

    
 

До этого мы писали программы с использованием OpenGL и GLUT.

Но SGI* приготовила программистам ещё одну библиотеку.

GLAUX - библиотека, где есть всё для работы с OpenGL

(чтение файла растра, наложение текстуры, построение примитивов...). Правда

одно маленькое замечание: в разделе Инструмент вы найдёте

glaux.dll в архиве RAR (~160kb), но в распакованном виде она

"весит" !1.32 Mb!, и вам придётся "таскать" этот файл вместе

со своей программой. Так же в разделе Инструмент вы найдёте

заголовки Этой библиотеки для DELPHI и для C++. !!!ВНИМАНИЕ!!!

Кто может "конвертнуть" заголовки из С++ в DELPHI, тот сделает

благородное дело для себя и ОСТАЛЬНЫХ!
А теперь поговорим про программировании с этой библиотекой.

Откройте новый проект: File -> New -> Application

Теперь в дириктиву "uses" добавьте "glaux" вот так

(файл GLAUX.pas должен быть у вас):

Code:

uses

    Windows, Messages, SysUtils, Classes, Graphics, Controls,

Forms,ExtCtrls, Dialogs, glaux

//Подключаем Glaux.pas

 

Далее в процедуре TForm1.draww, после того как переведём

камеру в нужную точку функцией

 

  glTranslatef(0.0, 0.0, -7.0);

 

можно рисовать всё, что угодно.

Code:

procedure TForm1.draww;

Begin

glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);

glClearColor(0.7,0.7,0.7,0.0);

glLoadIdentity;

glTranslatef(0.0, 0.0, -7.0);

{}

    auxSolidSphere(2.0);

{}

SwapBuffers(DC);

end;

 

Вот список того, что можно построить:

 

auxWireSphere(1);

auxSolidSphere(1);

auxWireCube(1);

auxSolidCube(1);

auxWireBox(1,2,3);

auxSolidBox(1,2,3);

auxWireTorus(1,2);

auxSolidTorus(1,2);

auxWireCylinder(1,2);

auxSolidCylinder(1,2);

auxWireIcosahedron(1);

auxSolidIcosahedron(1);

auxWireOctahedron(1);

auxSolidOctahedron(1);

auxWireTetrahedron(1);

auxSolidTetrahedron(1);

auxWireDodecahedron(1);

auxSolidDodecahedron(1);

auxWireCone(1,0.5);

auxSolidCone(1,0.5);

auxWireTeapot(1);

auxSolidTeapot(1);

 

 

 

Вот и всё!

 

http://www.ogldelphi.km.ru/about.html

©Drkb::03948