Sadržaj se učitava...
mdi-home Početna mdi-account-multiple Djelatnici mdi-script Studiji mdi-layers Katedre mdi-calendar-clock Raspored sati FOI Nastava search apps mdi-login
Računalna grafika
Computer Graphics
2016/2017
5 ECTSa
Baze podataka i baze znanja 1.2 (BPBZ)
Informacijsko i programsko inženjerstvo 1.2 (IPI)
Informatika u obrazovanju 1.2 (IUO)
Organizacija poslovnih sustava 1.2 (OPS)
Katedra za informatičke tehnologije i računarstvo
RI
3. semestar
Osnovne informacijemdi-information-variant Izvođači nastavemdi-account-group Nastavni plan i programmdi-clipboard-text-outline Model praćenjamdi-human-male-board Ispitni rokovimdi-clipboard-check-outline Rasporedmdi-calendar-clock Konzultacijemdi-account-voice
Izvođenje kolegija
Cilj kolegija
Razumijevanje principa na kojima se temelji implementacija interaktivne 3D grafike na računalu i upoznavanje s metodama za obradu slikovnih informacija. Radi se o izvrsnim primjerima kako se komercijalne tehnologije temelje na fundamentalnim matematičkim spoznajama. Upravo zbog te fundamentalne utemeljenosti, znanja stečena na ovom kolegiju ne zastarijevaju – složenost i sofisticiranost računalne grafike svakodnevno raste, ali principi ostaju isti.
Preduvjeti
Kolegij nema definirane preduvjete
Norma kolegija
Predavanja
15 sati
Vježbe u praktikumu
30 sati
Nastavnik Uloga na kolegiju Oblik nastave Tjedana Sati Grupa
Hip Ivan Nositelj Predavanja 15 1 1
Horvat Damir Suradnik Vježbe u praktikumu 15 2 3
Sadržaj predavanja
  • Primjene računalne grafike
    U uvodnom predavanju ilustrirat će se široka primjena računalne grafike – od svakodnevnih i dobro poznatih grafičkih korisničkih sučelja (GUI), preko sustava za računalno projektiranje (CAD), primjene vizualizacije u znanosti i medicini, računalne grafike u realnom vremenu za potrebe simulatora i kompjutorskih igara, do spektakularnih animacija u filmskoj industriji. Na vježbama, studenti će se upoznati s mogućnostima modernih sustava za računalno projektiranje.
  • Interaktivna računalna grafika
    Interaktivna računalna grafika zahtijeva procesiranje u realnom vremenu. Opis grafičkih procesora koji omogućavaju da se čitav niz zahtjevnih operacija izvede na razini hardvera. OpenGL i Microsoftov DirectX Direct3D – knjižnice grafičkih rutina koje mogu biti implementirane u softveru, ali velikim dijelom se izvode direktno na grafičkim procesorima. Na vježbama upoznavanje s praktičnim aspektima rada s OpenGL API-jem i pomoćnim rutinama GLUT (OpenGL Utility Toolkit)
  • Uvod u OpenGL
    Opis filozofije i demonstracija mogućnosti OpenGL-a. Počinje se s osnovnim grafičkim elementima – crtanje linija, postavljanje varijabli stanja, boja i ostalih atributa. Na vježbama se samostalno rješavaju zadaci koji zahtijevaju primjenu obrađenih rutina.
  • 2-D grafika
    Koordinatni sustavi i transformacije kod iscrtavanja. Homogene koordinate i matrična reprezentacija geometrijskih transformacija. Osnovne geometrijske transformacije u dvije dimenzije: translacija, rotacija, skaliranje, zrcaljenje, posmik (shear). Inverzne transformacije. Kompozicija različitih transformacija kao produkt matrica – operatora. Na vježbama se implementiraju matrični operatori za različite geometrijske transformacije.
  • 3-D grafika – paralelna i perspektivna projekcija
    Projekcija trodimenzionalnih objekata na dvodimenzionalni ekran. Problem perspektive. Paralelna – ortogonalna i kosa projekcija. Perspektivna projekcija – centar i ravnina projekcije. Koordinatni sustav kamere. Matrica transformacije za perspektivnu projekciju. Na vježbama se upoznaje s projekcijama podržanim u OpenGL knjižnici rutina, te načinom njihove upotrebe.
  • Geometrijske transformacije u 3D
    Matrična reprezentacija geometrijskih transformacija u prostoru: translacije, rotacije i skaliranja. Rotacija oko proizvoljne osi. OpenGL rutine za geometrijske transformacije. Animacija u OpenGL-u. Metoda dvostrukog spremnika. Na vježbama se eksperimentira s različitim transformacijama i animacijama žičanih modela u 3D.
  • Reprezentacije trodimenzionalnih objekata
    Reprezentacija trodimenzionalnih objekata pomoću mreže poligona. Selektivno odbacivanje. Spremnik dubine. Na vježbama eksperimentiranje s rutinama koje su sastavni dio OpenGL-a.
  • Osvjetljavanje i sjenčanje
    Položaj, vrsta i intenzitet izvora svjetlosti. Opadanje intenziteta s udaljenošću. Optička svojstva površina. Refleksija, transmisija i apsorpcija. Ambijentalno svjetlo. Difuzna i zrcalna refleksija. Phongov model. Usmjerena svjetla (reflektori). Svojstva materijala. Vektori normale. Na vježbama se upoznaje i eksperimentira s modelom osvjetljenja u OpenGL-u.
  • Teksture, prozirnost i simulacija magle
    Dodavanje površinskih detalja – teksture. Prozirnost. Magla. Pregled mogućnosti OpenGL-a kojima podržava teksture, prozirnost i maglu. Na vježbama se upoznaje s korištenjem tekstura za uvjerljivo modeliranje stvarnih objekata u virtualnom svijetu.
  • Simulacija fizike
    Sljedeći korak u realističnosti je da se animirani objekti ponašaju u skladu sa zakonima fizike – makroskopski objekti slijede zakone klasične mehanike. Mehanika materijalne točke. Mehanika krutog i deformabilnog tijela. Drugi Newtonov zakon. Integracija Eulerovom metodom. Na vježbama implementacija kosog hica i mase vezane oprugama.
  • Parametarske krivulje i plohe
    Splajnovi (splines) kao sredstvo za prikaz zakrivljenih linija i površina. Zadavanje kroz kontrolne točke i rubne uvjete. Bézierove krivulje i plohe. B-splajnovi i ostale vrste splajnova. Na vježbama upoznavanje i eksperimentiranje sa splajnovima.
  • Fourierove transformacije
    Razumijevanje ovog klasičnog, ali uvijek iznova fascinantnog poglavlje matematike omogućava razumijevanje principa na kojima se temelji kompresija, filtriranje i rekonstrukcija slikovnih i zvučnih zapisa. Fourierovi redovi. Fourierove transformacije. Inverzne Fourierove transformacije. Diskretne Fourierove transformacije. Na vježbama se ilustrira izračunavanje Fourierovih koeficijenata i aproksimacija periodičkih funkcija vodećim članovima odgovarajućeg Fourierovog reda.
  • Filtriranje i kompresija
    Diskretne Fourierove transformacije u dvije i više dimenzija. Potreba za efikasnom implementacijom. FFT – Fast Fourier Transform. Eliminacija određenih dijelova frekvencijskog spektra – filtriranje – uz pomoć diskretnih Fourierovih transformacija. Kompresija izostavljanjem visokofrekventnih Fourierovih modova. Moderne metode kompresije – JPEG i MP3 formati. Na vježbama studenti sami implementiraju i proučavaju efekte filtriranja i jednostavnih metoda kompresije.
  • Fraktalna geometrija prirode
    Šećer dolazi na kraju: euklidske metode ne daju realističan prikaz prirodnih objekata – ako želimo uvjerljivo prikazati drveće, planine ili oblake moramo posegnuti za metodama fraktalne geometrije. Fraktali i fraktalna dimenzija. Iteracije i područja konvergencije u kompleksnoj ravnini. Deterministički sebi-slični fraktali. Plazma fraktali. Modeli terena. Na vježbama studenti uživaju u čudesnim oblicima koji nastaju korištenjem jednostavnih iterativnih postupaka.
Sadržaj seminara/vježbi
  • Vježbe su integralni i esencijalni dio ovog kolegija, pa su opisane zajedno s predavanjima. Studenti
    • Vježbe su integralni i esencijalni dio ovog kolegija pa su opisane zajedno s predavanjima. Studenti će koristiti programske jezike Java, C i C++ za samostalno i kreativno rješavanje problema. Problemi, zajedno s relevantnim informacijama, fragmentima koda i savjetima korisnim za rješavanje, bit će zadani putem web stranica i sustava za e-učenje.
Ishodi učenja kolegija
  • implementirati fiziku - realno ponašanje virtualnih predmeta
  • kreirati složene interaktivne računalne programe s elementima numerike i simulacije koji se izvršavaju u realnom vremenu
  • primijeniti fraktale za specijalne efekte i modele terena
  • primijeniti parametarske krivulje i plohe za modeliranje virtualnih objekata
  • primijeniti programsko sučelje OpenGL u razvoju aplikacija koje koriste 3D grafiku
  • primijeniti teksture
  • razumjeti i primijeniti jednostavnije modele osvjetljenja, prozirnosti i magle
  • razumjeti paradigme za efikasan rad s 3D grafikom koje su implementirane u suvremenim programskim sučeljima i grafičkom sklopovlju (virtualna scena, koordinatni sustavi, model kamere, z-spremnik, iscrtavanje, sjenčanje)
  • razumjeti principe interaktivne 3D grafike i računalne animacije
  • razumjeti, primijeniti i, po potrebi, implementirati matričnu reprezentaciju geometrijskih transformacija i projekcija u 3D
Ishodi učenja programa
  • Primijeniti etička načela, zakonsku regulativu i norme koje se koriste u struci
  • Analizirati i procijeniti uvjete za primjenu suvremenih informacijskih i komunikacijskih tehnologija (ICT), savjetovati druge u primjeni iste te u zadanom kontekstu odrediti utjecaj primjene na pojedinca, organizaciju i društvo.
  • Modeliranje problema iz područja informacijskih i poslovnih sustava korištenjem matematičkih metoda, metoda razvoja informacijskih sustava i koncepata planiranja, upravljanja i poslovanja
  • Primijeniti, utvrditi uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz rješavanje problema iz područja informacijskih i poslovnih sustava
  • Analizirati i ocijeniti učinkovitost uvođenja i korištenja ICT (programskog rješenja i pripadajuće opreme) za konkretne problemske domene informacijskih i poslovnih sustava
  • Procijeniti i preporučiti programska rješenja za konkretne problemske domene informacijskih i poslovnih sustava
  • Voditi interdisciplinarni tim i raditi u takvom timu
  • Predstaviti i popularizirati suvremena trendove u informatici u stručnim i laičkim krugovima
  • Unaprijediti metode komuniciranja i komunikaciju s klijentima, korisnicima i kolegama na verbalan i pisani način uz primjenu odgovarajuće terminologije uključujući i sposobnost komunikacije o struci na stranom jeziku
  • Unaprijediti i primijeniti metode stručnog rada pronalaženjem i vrednovanjem suvremenih izvora znanja
  • Valorizirati stručnu literaturu na hrvatskom i stranom jeziku
  • Razviti vlastite planove i planove drugih članova tima u upravljenju karijerom u struci i vlastitih poduzetničkih poduhvata s obzirom na potrebe poslovnog okruženja
  • Planirati proces cjeloživotnog osobnog i profesionalnog razvoja i definirati optimalne individualne strategije učenja
  • Projektirati, planirati, izraditi i uvesti svaki poslovni složeni informacijski sustav i/ili voditi projektni tim u slučaju kada na tim poslovima mora biti uključen veći broj stručnjaka
  • Razumjeti poslovni sustav organizacije i u suradnji s poslovnim stručnjacima optimalizirati njezine poslovne procese te izraditi strateški plan primjene ICT-a
  • Oblikovati softversku arhitekturu složenog informacijskog sustava, odabrati i postaviti odgovarajuću tehnološku platformu i programirati najsloženije dijelove složenog sustava
  • Primijeniti metode planiranja i upravljanja poslovanjem uz pomoć ICT u osnovnim vertikalnim područjima primjene ICT
  • Utvrditi uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz ključne aspekte primjene i razvoja informacijske tehnologije (programiranje, algoritmi, strukture podataka, baze podataka i znanja)
  • Utvrditi uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz suvremene tehničke koncepte i prakse u informacijskim tehnologijama (arhitektura računala, operacijski sustavi, mreže računala)
  • Utvrditi uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz metode i koncepte planiranja, upravljanja organizacijom i obračuna poslovanja
  • Analizirati uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz metodološke pristupe razvoju organizacijskih i informacijskih sustava
  • Analizirati uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke za primjenu koncepata elektroničkog poslovanja podržanih odgovarajućim arhitekturama informacijskih sustava (klasične ili distribuirane)
  • Osmisliti projekt učinkovitog unapređenja poslovne tehnologije poslovnog sustava uz korištenje suvremenih ICT te realizirati takav projekt vlastitim razvojem ili izborom prikladnog standardnog softvera
  • Odabrati i primijeniti odgovarajuće sigurnosne mehanizme pri projektiranju i izgradnji informacijskog sustava
  • Odabrati i primijeniti metode i tehnike razvoja informacijskih i programskih sustava u suvremenim razvojnim okolinama
  • Utvrditi uvjete za primjenu, savjetovati, procijeniti učinak i donositi odluke vezane uz procese, metode i tehnologije upravljanja IT uslugama i resursima te podrške i pružanja različitih vrsta usluga vezanih uz ICT
  • Objasniti stručnoj i općoj publici informatička rješenja za unapređenje poslovne tehnologije
  • Analizirati i valorizirati atribucije (atribute) objekata poslovnog sustava te postaviti formalni model objektnog sustava kao temelj izgradnje informacijskog sustava
  • Izgraditi informacijski sustav temeljen distribuiranim komponentama kao i na autonomnim i međusobno kompetitivnim izvorima znanja i razriješiti konflikte koji se javljaju među izvorima znanja
  • Primijeniti metode i tehnike izgradnje digitalnih arhiva i dugotrajnog pohranjivanja podataka
  • Primijeniti metode i tehnike pretraživanja i klasifikacije informacija
  • Prepoznati kritične procese i klase podataka poslovnog sustava, izgraditi formalni model procesa i klasa te ga optimizirati i ponuditi prijedloge poboljšanja poslovnog sustava
  • Modelirati poslovna pravila, poslovne podatke kao i pravila za izvođenje transakcijskih podataka koji nisu eksplicitno zadani
  • Modelirati i izgraditi sustav izvođenja analitičkih podataka iz transakcijskih metodama rudarenja i drugim metodama, te izgradnje skladišta podataka u koja se ti podaci pohranjuju
  • Modelirati i izgraditi sustave poslovne inteligencije temeljene na skladištima podataka, kao i njihovo pretraživanje korištenjem metoda višedimenzionalnih kocaka podataka (OLAP)
  • Izgraditi računalni sustav za pohranu podataka i znanja korištenjem suvremenih alata za izradu baza podataka, baza znanja i semantici podataka
  • Izgraditi i optimizirati bazu podataka i bazu znanja primjenom odgovarajućih strategija organizacije podataka i sigurnosti informacijskog sustava
  • Modelirati raspodjelu podataka prema mjestu korištenja podataka, izgraditi sustav replikacije baze podataka i izgraditi distribuiranu bazu podataka
  • Modelirati i izgraditi sustave temeljene na znanju, kao što su višeagentni sustavi, deduktivni sustavi (uključujući i ekspertne sustave), semantički Web sustavi, neuralne mreže itd.
  • Procijeniti potrebe za strategijskim i upravljačkim promjenama u organizacijama
  • Primijeniti metode upravljanja životnim ciklusom informacijskog sustava organizacije
  • Primijeniti metode korporacijskog upravljanja i strategijskog menadžmenta uz potporu informacijske tehnologije
  • Razviti i validirati sustav mjerenja organizacijske učinkovitosti uz primjenu odgovarajućih programskih alata
  • Analizirati tržište primjenom informacijsko-komunikacijskih tehnologija
  • Analizirati poslovne procese i preporučiti primjenu odgovarajuće informacijske i komunikacijske tehnologije za unapređenje poslovnih procesa
  • Organizirati sustav vođenja u javnoj upravi uz primjenu informacijske tehnologije
  • Razviti elemente kontinuuma strategijskog upravljanja: misiju, organizacijske vrijednosti, viziju, strateške ciljeve
  • Analizirati potrebu za e-poslovanjem i primijeniti koncepte e-poslovanja
  • Procijeniti spremnost organizacije za uvođenje suvremenih ERP sustava i definirati projekt uvođenja istih
  • Razumjeti povijesni aspekt edukacijskih sustava, društvenu uvjetovanost odgojno-obrazovne prakse i diferenciranost suvremenih odgojno-obrazovnih koncepcija
  • Poznavati organizaciju sustava odgoja i obrazovanja te ustroj odgojno-obrazovnog procesa na svim razinama
  • Razumjeti odrednice djelovanja i ponašanja ljudske jedinke i grupnu dinamiku (razrednog odjeljenja, timova, kolektiva …)
  • Organizirati nastavni proces
  • Artikulirati nastavni sat primjenjujući primjerene nastavne metode i oblike rada, didaktičke principe i nastavna sredstva
  • Voditi pedagošku dokumentaciju, ispitivanje,ocjenjivanje i vrednovanje u skladu s zakonskom regulativom i kriterijima osobne i profesionalne etičnosti
  • Poučavati učenike primjeni različitih oblika učenja, samovrednovanju i samoreguliranom učenju
  • Upravljati razrednim odjeljenjem, i surađivati s roditeljima i drugim strukturama unutar i izvan odgojno-obrazovne institucije
  • Analizirati građu računala, suvremene računalne arhitekture te primijeniti ta znanja u dizajnu obrazovnog informacijskog sustava, kao i u nastavi
  • Primijeniti principe proceduralnog programiranja, izgradnje struktura podataka i algoritama
  • Interpretirati povijest informatike i računarstva
  • Analizirati i usporediti računalne Web i desktop alate za prezentaciju informacija i primijeniti ih u nastavi
  • Formulirati problem iz realnog svijeta u smislu problemskog zadatka u informatici te ga znati riješiti i rješenje evaluirati
  • Analizirati, preporučiti, implementirati i koristiti sustave za e-učenje u skladu s metodičkim i pedagoškim principima
  • Izvoditi proces poučavanja u multikulturalnim i multietničkim sredinama i drugim posebnim uvjetima (treća dob, centri izvrsnosti …)
  • Osmisliti postupke za upravljanje procesom učenja i poučavanja u rizičnim situacijama
  • Predstavljati informatička znanja i vještine kao učinkovite instrumente za podupiranje integracijskih procesa
  • Predstavljati nastavnicima mogućnosti korištenja informatike u odgojno-obrazovnom procesu
  • Preispitivati, strukturirati i restrukturirati svoja osobna i profesionalna iskustva (razvijati refleksivnu praksu)
  • Koristiti stečena znanja o vizualnom oblikovanju i sadržajima u ostvarivanju kreativnih vizualnih projekata pri radu s računalom.
  • Modelirati postojeće vizualne sadržaje za potrebe konkretnih osobnih (ili učeničkih) računalnih radova (web dizajn, grafički dizajn, dizajn multimedija,…).
  • Koristiti vještine učenja potrebne za cjeloživotno učenje i nastavak obrazovanja na diplomskom studiju.
  • Upoznati Nacionalni okvirni kurikulum. Upoznati metodologiju izradbe školskog i nastavnog kurikuluma. Upoznati primjenu nastavnog kurikuluma u praksi.
Osnovna literatura
  • Hearn, D.; Baker, M.P. Computer Graphics with OpenGL (3rd Edition), Prentice Hall, 2004.
Dopunska literatura
  • Klawonn, F. Introduction to Computer Graphics, Springer Verlag, 2008.
  • Mortenson, M.E. Mathematics for Computer Graphics Applications (2nd Edition), Industrial Press, 1999.
  • OpenGL Architecture Review Board, OpenGL Programming Guide (6th Edition), Addison-Wesley, 2008.
  • Luna, F. D. Introduction to 3D Game Programming with DirectX 10, Wordware Publishing, 2008.
  • Mandelbrot B. B. The Fractal Geometry of Nature, W. H. Freeman, 1982.
Slični kolegiji
  • Massachusetts Institute of Technology, http://graphics.lcs.mit.edu/classes/6.837/F02/lectures.html
  • Princeton University, http://www.cs.princeton.edu/courses/archive/spring03/cs426/
  • Brown University, http://www.cs.brown.edu/courses/cs123/lectures.shtml
  • University of Wisconsin, http://www.cs.wisc.edu/%7Eschenney/courses/cs559-s2004/
  • Technische Universität Wien, http://www.cg.tuwien.ac.at/courses/
Redoviti studenti Izvanredni studenti
U kalendaru ispod se nalaze konzultacije predmetnih nastavnika, no za detalje o konzultacijama možete provjeriti na profilu pojedinog predmetnog nastavnika.
2024 © Fakultet organizacije i informatike, Centar za razvoj programskih proizvoda