Podrška za laboratorijske vježbe
U laboratorijskim vježbama koristi se
iscrtavanje točke i linije u boji na zaslon. Kako bi programeru
korištenje ovih (i brojnih drugih) grafičkih funkcija bilo dostupno,
potrebno je koristiti programsku podršku koja olakšava upotrebu
grafičkog sklopovlja.
Težanja je načiniti programski
kod tako da je on prenosiv na različite
platforme (Windows, *nux, MacOS ...), pa se stoga standardima propisuju
grafičke funkcije. Grafičke fukcije želimo koristiti u različitim
programskim okruženjima (C/C++, Basic, Fortran, Java ...), no same
funkcije su u osnovi iste, što je još jedan razlog za standardizaciju.
Ukoliko su funkcije definirane standardima, proizvođači sklopovske
grafičke opreme podržavaju postavljene standarde, a pojedine djelove
sklopovlja postavljaju programirljivim.
Grafičkim standardima, od kojih
su najpoznatiji OpenGL i DirectX-Direct3D, propisano je programsko
sučelje tj. API-a (engl. Application Programming Interface) prema
sklopovlju. U akademska zajednici široko prihvaćeni stand je OpenGL, te
su i ovdje odabrani početni primjeri uz njegovo korištenje.
Laboratorijske vježbe mogu biti
ostvarene upotrebom bilo kojeg programskog alata, na proizvoljnoj
platformi (programskoj/sklopovskoj) i uz proizvoljno sučelje prema
grafičkom sklopovlju. Prezentacija programa uključuje izvođenje i
objašnjavanje koda.
OpenGL nema podršku za rad sa
grafičkim sučeljem odnosno s prozorima, mišem, definicije imalo
složenijih objekata. Uz laboratorijske vježbe se ne zahtijeva
korisničko sučelje, no potrebno je ostvariti prikaz. Rad sa prozorom,
mišem i tipkovnicom olakšava upotreba GLUT alata, pa su primjeri za
početak načinjeni upotrebom ovog alata. Primjeri za početak su
načinjeni uz prvi vježbu (iscratavanje linije do 0-45) i uz šestu
vježbu (iscrtavanje trokuta u prostoru s različitim intenzitetima u
vrhovima).
Za vježbe mogu biti upotrebljeni programski alati
Microsoft Visual C++
U laboratoriju će biti instaliran GLUT (OpenGL
Utility Toolkit). GLUT olakšava izgradnju i rad aplikacija.
Primjer za početak uz prvi vježbu je
Bresenham.cpp
Project
(.NET)
Za rad kod kuće (za one koji imaju namjeru koristiti) GLUT :
Nalazi se na
http://www.xmission.com/~nate/glut.html
glut-3.7.6-bin.zip
(117 KB)
Nakon raspakiranja potrebno je iskopirati datoteke u odgovarajuće
direktorije (piše u Readme):
glut32.dll to
%WinDir%\System,
glut32.lib to
$(MSDevDir)\..\..\VC98\lib,
and
glut.h to
$(MSDevDir)\..\..\VC98\include\GL
Ako glut32.lib nije u navedenom direktoriju (u labaratoriju je obično
instalirano više verzija MS Visual Studi-a i samo uz jedan je
instaliran glut), potrebno je dodati stazu: Tools/ Options/ Projects
and
Solutions/ VC++ Directoris/ Library files/New i isto za
glut.h Tools/ Options/ Projects and Solutions/ VC++
Directoris/ Include files.
Objekti na
kojima je potrebno isprobati rad programa za 4-8 vježbe su Objekti
Primjer za početak uz šestu vježbu je:
izvorni kod
izvršna verzija
OpenGL i GLUT:
OpenGL Programming
Guide
Glut Tutorial
Ostalo:
Primjeri za početak mogu se naći na adersi:
http://www.xmission.com/~nate/tutors.html
http://nehe.gamedev.net/
http://www.gametutorials.com/Tutorials/opengl/OpenGL_Pg1.htm