Domeniu: Calculatoare
Conține 1 fișier:
pdf
Pagini : 86 în total
Cuvinte : 20495
Mărime: 1.02MB (arhivat)
Publicat de: Faust Dicu
Puncte necesare: 0
Profesor îndrumător / Prezentat Profesorului:
Culea George
Cuprins
- 1.1 Lucrare de laborator 1.
- 1.1.1Introducere în OpenGL
- OpenGL (Open Graphic Library) nu este cum s-ar putea crede un limbaj de programare ci un standard de programare al aplicaţiilor 3D. A fost primul standard care s-a impus pe piaţă fiind inclus deja la primele versiuni de Windows95 şi WindowsNT4.0. Practic odată cu biblioteca de funcţii Win32 a apărut şi suportul pentru OpenGL (separat desigur…).
- OpenGL este independent de mediul de programare, fiind definite aceleaşi tipuri de date şi aceleaşi funcţii indiferent dacă se programează în Visual C, Visual Basic, Delphi, CBuilder ş.a. Totuşi se poate observa o oarecare înrudire între OpenGL şi C pe măsură ce se avansează în programare şi se capătă o oarecare experienţă şi familiaritate cu OpenGL. Nu se pot nega nici oarecare asemănări cu Delphi, dar mai puţine ca număr şi mai subtile.
- Astfel chiar dacă veţi învăţa OpenGL utilizând Vizual C, veţi putea trece relativ rapid şi fără dificultaţi la alt mediu de programare mai familiar, dar care are biblioteci OpenGL. Alte medii de programare continuă încă să includă şi să actualizeze bibliotecile OpenGL, şi aceasta cu atât mai mult cu cât marea parte a distribuţiilor de Linux se bazează pe acest standard. În Linux s-a impus deja GLUT (OpenGL Utility Toolkit) şi mai nou freeGLUT.
- Deci dacă doriţi implementare în medii freeware de aplicaţii 3D aceasta este soluţia.
- Linkuri utile:
- - http://freeglut.sourceforge.net/
- - www.opengl.org
- 1.1.2Crearea unei aplicaţii OpenGL
- Pentru a crea o aplicaţie OpenGL se va folosi în principal 4 biblioteci :
- - gl.h – bibliotecă exclusiv după standardul OpenGL;
- - glu.h – bibliotecă auxiliară pentru integrarea OpenGL în mediul de programare şi nu numai;
- - glaux.h – bibliotecă auxiliară pentru crearea şi testarea rapidă de aplicaţii OpenGL;
- - glos.h – microbibliotecă pentru corecţia unui mic bug din bibliotecile OpenGL din Visual C.
- Alături de acestea mai avem nevoie de 3 librării:
- - glu32.lib
- - glaux.lib
- - opengl32.lib
- Ce se găsesc în directorul LIB al Visual C.
- În plus sistemul de operare trebuie să includă neapărat în directorul system32 – opengl32.dll.
- Vom utiliza pentru aceste laboratoare Visual C++ 2008.
- Iniţial vom lucra în modul consolă.
- Vom proceda astfel:
- 1. Rulăm Visual C++;
- 2. Din File alegem New;
- 3. Selectăm Project;
- 4. Alegem Win32 Console Application si dam un nume proiectului și OK
- 5. Selectam NEXT si in fereastra Application Settings selectam Empty project și Finish
- 6. In Solution Explorer facem clic dreapta pe Source Files și selectăm Add, apoi New Item și selectam Visual C++ și C++ file in templates;
- 7. Denumim fişierul de obicei cu acelasi nume cu fisierul și dam clic pe ADD;
- 8. Scriem programul in acest fisier.
- 9. Din meniul Project – alegem Property la Linker_Input și se fac setarile ;
- 10. La Additional Dependencies adaugam librăriile folosite de OpenGL – glu32.lib, glaux.lib, opengl32.lib cu spaţii între ele şi fără virgulă
- 11. Rulăm programul cu F5.
- Pentru aplicațiile Open GL in Visual C++ 2008 pe Windows 10, se vor copia următoarele fisiere dacă nu există astfel:
- C:Program FilesMicrosoft SDKsWindowsv6.0AIncludegl
- glaux.h și glos.h
- C:Program FilesMicrosoft SDKsWindowsv6.0ALibglaux.lib
- Se editează programul.
Bibliografie
1. Dave Astle, Kevin Hawkins Beginning OpenGL Game Programming , Premier Press, Boston, 2004;
2. Paul Martz,OpenGL(R) Distilled (OpenGL), Addison Wesley Professional, 2006;
3. Richard S. Wright Jr., Michael R. Sweet ,OpenGL Super Bible, Waite Group Press. ,2007;
4. Rodica Baciu , Programarea Aplicaţiilor Grafice 3D cu OpenGL, Editura Albastră, Cluj-Napoca 2005;
5. The Red Book of OpenGL
6. http://www.opengl.org
7. http://www.sgi.com/software/opengl
8. http://www.cs.utah.edu/~narobins/opengl.html
9. www.mesa3d.org/
Preview document
Conținut arhivă zip
- indrumar de laborator PG.pdf