TIEA311 Introduction to Computer Graphics (5 cr)

Study level:
Intermediate studies
Grading scale:
0-5
Language:
Finnish
Responsible organisation:
Faculty of Information Technology
Curriculum periods:
2017-2018, 2018-2019, 2019-2020

Description

Sisältö

Kaksi- ja kolmiulotteisten kappaleiden muodon, sijainnin, orientaation ja materiaalin mallintaminen grafiikkasovelluksia varten matemaattisesti ja tietokoneohjelmassa. Virtuaalisen maailman kuvaaminen primitiivikappaleiden hierarkkisena mallina (näkymägraafi). Homogeeniset koordinaatit ja geometriamuunnokset. Projektiokuvan ja peräkkäisistä kuvista muodostuvan animaation muodostaminen simuloidun kameran näkökulmasta perspektiivi- ja yhdensuuntaisprojektiolla. Värin aistiminen ja kuvaaminen RGB-kolmikkona rasterinäytöissä. Yksinkertaiset valaistus- ja heijastusmallit, säteenheiton ja -seurannan alkeet. Säteen ja pinnan/kolmion/pallon leikkauskohtien määrittäminen. Alustava johdanto grafiikkarajapintoihin, laitteisiin ja tiedostomuotoihin. Suomen- ja englanninkielinen sanasto grafiikka-aihepiiristä. Käsitteellinen perusymmärrys ja mekaaninen laskenta matriiseilla ja vektoreilla.

Suoritustavat

Ohjelmointiharjoitukset ja tentti.

Arviointiperusteet

Kurssin arvosana perustuu kurssin aikana tehdyissä ohjelmointitehtävissä saavutettuun tasoon (toteutettujen ominaisuuksien määrä ja laatu). Tentillä vain varmistetaan, että käsitteellinen ymmärrys ja matemaattiset (mekaaniset) laskutaidot on saavutettu. Leikkuripistemäärän ylittyminen vaaditaan kurssin läpäisemiseksi, mutta muuten tenttipisteet eivät vaikuta ohjelmointitehtävistä muodostuvaan arvosanaan. Vastuuopettaja voi määritellä mahdollisuuksia lisäpisteisiin luentokurssin aikana tapahtuvan ylimääräisen osallistumisen kautta, esim. aktiivisesta avunannosta vertaistukikanavilla, aihepiirin soveltamisesta harrastusprojekteihin tmv.

Learning outcomes

Ensisijaisena tavoitteena on kurssin jälkeen kyetä tutoriaalien ja manuaalien avulla ottamaan itsenäisesti käyttöön jokin tyypillinen grafiikkarajapinta (esim. OpenGL, WebGL, DirectX) ja/tai kirjasto (esim. OpenScenegraph, Three.js) tulevissa työ-, opinto- ja harrastusprojekteissa tarpeen mukaan. Lisäksi tavoitteena on osata teoreettiset esitiedot, käytännön taidot sekä suomenkielinen sanasto syventävien jatkokurssien, esim. TIES471 Reaaliaikainen renderöinti, suorittamiseksi tai opinnäytteiden tekemiseksi tietokonegrafiikan aihepiireistä. Kurssin tarkoitus on myös esitellä konkreettinen sovelluskohde matematiikan taidoille, erityisesti lineaarialgebralle, joko ennen syvällisempää matematiikan opiskelua tai jo alkaneen matematiikan opiskelun aikana.

Description of prerequisites

Ohjelmointi 1 ja Ohjelmointi 2 -kurssien hyvä hallinta tai vastaava ohjelmointitaito on välttämätön esitieto. Algoritmit 1 ja 2 sekä lineaarialgebran ja calculuksen aiempi opiskelu on hyödyksi, vaikka niiden tarvittavat osuudet käydään pinnallisesti läpi myös kurssilla. Esitietojen puuttuessa opiskelijan tulee varautua käyttämään ylimääräistä aikaa niiden saavuttamiseen kurssin aikana.

Study materials

Kurssi pohjautuu MIT:n avoimella lisenssillä julkaisemaan englanninkieliseen kalvosarjaan, jota muokataan paikallisten tarpeiden mukaan. Reaaliaikaisesti päivittyvä avoin kurssimateriaaliadaptaatio: https://yousource.it.jyu.fi/tiea311-kurssimateriaalikehitys/tiea311-kurssimateriaali-avoin

Completion methods

Method 1

Select all marked parts
Parts of the completion methods
x
Unpublished assessment item