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.

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 pocetak je  
        3DTrokut.cpp
        3Dtrokut (.exe)

Za rad¸kod kuce (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:

       glut32.dll to    %WinDir%\System,
       glut32.lib to    $(MSDevDir)\..\..\VC98\lib, and
       glut.h     to      $(MSDevDir)\..\..\VC98\include\GL

Kratak primjer koji iscartava rotirajući trokut je na adresi:
www.geocities.com  nalazi se u glsample.zip


        Primjeri:
http://www.opengl.org/developers/code/examples/redbook/redbook.html

        U ovom slučaju potrebno je dodati biblioteku Opengl32.lib (u project i debug).

OpenGL:

        OpenGL Programming Guide

Ove godine nije instaliran u laboratoriju
Borland C/C++:

Ukoliko netko koristi ovaj programski alat, može pokazati i objasniti izvirni kod i izvođenje programa, no nemože načiniti prevođenje svojih izvornih programa u laboratoriju.

Iskustva studenata prošlih generacija

Borland C++    http://prcela.batcave.net/lessons/lekcija01.htm
          Direct 3D         http://fly.srk.fer.hr/~mirol/directx/Uvod.html

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