Vedenpintaefekti 3D-peliympäristöön
Leinonen, Jani (2023)
Leinonen, Jani
2023
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202301121233
https://urn.fi/URN:NBN:fi:amk-202301121233
Tiivistelmä
Työssä koottiin yhteen tekniikat, joilla voidaan saavuttaa suhteellisen realistinen vedenpintaefekti 3D-peliympäristöön viemättä liikaa prosessointivoimaa. Työssä myös käytiin läpi, miten nämä eri tekniikat ja algoritmit voitiin soveltaa peliprojektiin tai muuhun reaaliaikaiseen virtuaaliseen 3D-ympäristöön hyödyntämällä varjostimia ja grafiikkaohjelmointia. Työn tavoitteena oli myös tekijän tiedon ja taitojen kehittäminen grafiikkaohjelmoinnissa.
Teknisessä osiossa selitettiin aluksi eri varjostimista yleisesti, eli mitä varjostimet ovat ja mihin niitä hyödynnetään. Pääosiossa käytiin läpi vedenpinnan algoritmit aaltoliikkeelle, vedenpinnan geometrialle ja veden pinnan värjäämiselle.
Käytännön osiossa käytiin läpi, miten vedenpinnan algoritmit voitiin soveltaa peliympäristöön varjostimilla ja grafiikkaohjelmoinnilla. Soveltaminen tehtiin Unity-pelimoottorissa ja ohjelmointi kirjoitettiin HLSL-grafiikkaohjelmointikielellä.
Työn lopussa tutkittiin tekniikoiden tehokkuutta saavuttamaan haluttua lopputulosta. Katsottiin, kuinka dynaaminen ja realistinen vedenpintaefekti kokonaisuudessaan oli sekä kuinka vaativa efektikokonaisuus oli näytönohjaimen prosessointivoimasta.
Teknisessä osiossa selitettiin aluksi eri varjostimista yleisesti, eli mitä varjostimet ovat ja mihin niitä hyödynnetään. Pääosiossa käytiin läpi vedenpinnan algoritmit aaltoliikkeelle, vedenpinnan geometrialle ja veden pinnan värjäämiselle.
Käytännön osiossa käytiin läpi, miten vedenpinnan algoritmit voitiin soveltaa peliympäristöön varjostimilla ja grafiikkaohjelmoinnilla. Soveltaminen tehtiin Unity-pelimoottorissa ja ohjelmointi kirjoitettiin HLSL-grafiikkaohjelmointikielellä.
Työn lopussa tutkittiin tekniikoiden tehokkuutta saavuttamaan haluttua lopputulosta. Katsottiin, kuinka dynaaminen ja realistinen vedenpintaefekti kokonaisuudessaan oli sekä kuinka vaativa efektikokonaisuus oli näytönohjaimen prosessointivoimasta.