58 | | Primer prikazuje prevajanje izvorne kode ''hello.c'' in ''readbel.c''. Primer enostavnega programa, kjer je izvorna koda zapisana v eni sami datoteki, prikazuje program ''hello''. Pri ''readbel'' pa se izvorna koda nanaša še na ''lupack'' datoteke. |
59 | | |
60 | | Pri tem je zelo pomembno, da drugo vrstico posameznega "cilja" vedno začnemo s tabulatorjem in ne s presledki! Komentarje v Makefile pa pišemo z znakom #, kot je razvidno iz primera. |
| 62 | Primer prikazuje prevajanje izvorne kode ''hello.c'' in ''readbel.c''. Primer enostavnega programa, kjer je izvorna koda zapisana v eni sami datoteki, prikazuje program ''hello''. Pri ''readbel'' pa se izvorna koda nanaša še na ''lupack'' datoteke. Ko prevedemo kode, se ustvarijo datoteke programov. V našem primeru gre to za datoteko ''hello'' in ''readbel''. |
| 63 | |
| 64 | Pri tem je zelo pomembno, da drugo vrstico posameznega "cilja" vedno začnemo s tabulatorjem in ne s presledki! Komentarje v ''Makefile'' pa pišemo z znakom #, kot je razvidno iz primera. |
193 | | glColor3f(1.0, 0.4, 1.0); |
194 | | glBegin(GL_LINES); |
195 | | glVertex2f(0.1, 0.1); |
196 | | glVertex3f(0.8, 0.8, 1.0); |
| 201 | glBegin(GL_TRIANGLES); |
| 202 | glColor3f(1.0, 0.0, 0.0); |
| 203 | glVertex2f(-1.0, -1.0); |
| 204 | glColor3f(0.0, 1.0, 0.0); |
| 205 | glVertex2f(0.0, 1.0); |
| 206 | glColor3f(0.0, 0.0, 1.0); |
| 207 | glVertex2f(1.0, 0.0); |
212 | | Za prevod te kode uporabimo ukaz {{{cc minimalni_program.c -lglut}}} , kjer z ''lglut'' povemo, da imamo vključeno knjižnico ''glut''. |
213 | | |
214 | | |
| 223 | Za prevod te kode uporabimo ukaz {{{cc ime_programa.c -lglut}}} , kjer z ''lglut'' povemo, da imamo vključeno knjižnico ''glut''. |
| 224 | |
| 225 | Pri tem opazimo, da moramo za grafični izris nekoliko dopolniti funkcijo ''main'' in sicer z argumentoma ''argc'' in ''argv''. Poleg tega moramo klicati še naslednje funkcije: |
| 226 | |
| 227 | - ''glutInit(&argc,argv)'' |
| 228 | |
| 229 | - ''glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB)'' - S tem definiramo, da program dela samo v eni ravnini (SINGLE), poleg tega pa definiramo še barve red, green in blue. Poznamo še DOUBLE, kjer dela program v dveh ravninah (program izrisuje na spodnjo ravnino, ko vse izriše, poda rezultat na zgornjo ravnino, ki jo vidi uporabnik). |
| 230 | |
| 231 | - ''glutCreateWindow("C GLUT program")'' |
| 232 | |
| 233 | - ''glutDisplayFunc(display)'' - Kličemo podprogram ''display'', v katerem imamo definirano, kaj naj program pravzaprav izriše. |
| 234 | |
| 235 | - ''glutMainLoop()'' - Predstavlja zanko, ki ponavlja vse funkcije v ''main''. Zanko prekinemo šele, ko zapremo okno. |
| 236 | |
| 237 | Več o OpenGL si lahko preberemo pod ''Računalniška grafika z OpenGL'' na povezavi [http://www.lecad.uni-lj.si:8000/vaje/wiki/opengl-intro?version=23 opengl-intro]. |