Rasterointiin perustava renderöintiputki
Shevtsov, Ivan (2026)
Shevtsov, Ivan
2026
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202604156580
https://urn.fi/URN:NBN:fi:amk-202604156580
Tiivistelmä
Tämä insinöörityö käsittelee reaaliaikaiseen rasterointiin perustuvan 3D-renderöintijärjestelmän suunnittelua ja toteutusta Vulkan-grafiikkarajapinnan avulla. Työn tavoitteena on muodostaa matemaattisesti ja arkkitehtonisesti perusteltu kokonaiskuva modernin renderöintiputken toiminnasta sekä havainnollistaa keskeisten teoreettisten käsitteiden toteutusta käytännön ohjelmistossa.
Työssä tarkastellaan kolmiulotteisen grafiikan matemaattisia perusteita, kuten koordinaatistoja, vektorilaskentaa ja matriisimuunnoksia. Erityistä huomiota kiinnitetään näkymä- ja projektiomatriisien muodostamiseen, homogeenisiin koordinaatteihin sekä perspektiivi- ja ortografiseen projektioon. Näiden pohjalta toteutetaan kameraluokka, jonka avulla käyttäjä hallitsee näkymää kolmiulotteisessa tilassa.
Valaistuksen osalta työssä sovelletaan klassisia malleja, kuten Lambertin diffuusia heijastusta ja Phongin spekulaarista komponenttia, sekä tarkastellaan fragmenttivarjostuksen roolia valonlaskennassa. Lisäksi työssä käsitellään lyhyesti Fresnelin ilmiötä osana valaistuslaskentaa.
Toteutus perustuu Vulkanin matalan tason rajapintaan, joka mahdollistaa suoran resurssienhallinnan, synkronoinnin ja grafiikkaputken konfiguroinnin. Työ tarjoaa kokonaiskuvan rasterointiin perustuvan renderöintijärjestelmän matemaattisista ja teknisistä perusteista sekä niiden käytännön toteutuksesta.
Työssä tarkastellaan kolmiulotteisen grafiikan matemaattisia perusteita, kuten koordinaatistoja, vektorilaskentaa ja matriisimuunnoksia. Erityistä huomiota kiinnitetään näkymä- ja projektiomatriisien muodostamiseen, homogeenisiin koordinaatteihin sekä perspektiivi- ja ortografiseen projektioon. Näiden pohjalta toteutetaan kameraluokka, jonka avulla käyttäjä hallitsee näkymää kolmiulotteisessa tilassa.
Valaistuksen osalta työssä sovelletaan klassisia malleja, kuten Lambertin diffuusia heijastusta ja Phongin spekulaarista komponenttia, sekä tarkastellaan fragmenttivarjostuksen roolia valonlaskennassa. Lisäksi työssä käsitellään lyhyesti Fresnelin ilmiötä osana valaistuslaskentaa.
Toteutus perustuu Vulkanin matalan tason rajapintaan, joka mahdollistaa suoran resurssienhallinnan, synkronoinnin ja grafiikkaputken konfiguroinnin. Työ tarjoaa kokonaiskuvan rasterointiin perustuvan renderöintijärjestelmän matemaattisista ja teknisistä perusteista sekä niiden käytännön toteutuksesta.
