---
# System prepended metadata

title: 5 Results

---

# 5 Results 

Cilj ovog rada je prikazati optimizacijske metode na neoptimiziranoj sceni te optimizirati programe za sjenčanje kako bi ta scena postala manje zahtjevna.

Koristeći 4 optimizacijskih metoda optimiziravamo sljedeću scenu. 

Uzeta scena, iako je napravljena za video igru, nije optimizirana. Naime, ova scena koristi tehnike koje se inače koriste za CGI. Tolika razina optimizacije nije potrebna jer sami modeli i teksture koje video igra koristi nisu dovoljno detaljni da bi ta razina optimizacije bila uočljiva. 

**SLIKA - Rezultat9**

Počnimo od prve metode (eliminacija bespotrebnih parametara). Sve teksture koje se koriste za ovaj level su kombinacija jednostavnijih tekstura koje su zatim kombinirane zajedno. Primjer možemo vidjeti kod teksture *Landscape* koja koristi 5 različitih tekstura: 

1. *Sand*
2. *Gravel*
3. *Stones*
4. *Rock*
5. *RockSide*

Kao primjer, možemo vidjeti dio programa za sjenčanje (tekstura *Gravel*) koji regulira gruboću teksture. Trenutačna gruboća optimizirana je na fotorealističan način, čiji rezultat nije direktno uočljiv u levelu. Takva optimizacija je pogodnija za CGI u filmovima, a ne za igre. Iz tog razloga možemo ovaj dio ukloniti. 

**SLIKA - Rezultat11 spojeno before i after**

Druga metoda (refaktoriranje matematičkih formula). Potenciranje je komputacijski zahtjevan proces. Radi toga zamjeniti ćemo ga sa jednostavnijim matematičkim funkcijama. Kroz usporedbu dobivenih maski zaključujemo da dobivamo jednaki rezultat.

*objasnit sta smo napravili i pokazat razlike*

**SLIKA Rezultat12, Rezultat12-1 spojeno**

Kao što smo već spomenuli, želimo postići oštri gradijent bla bla...

Potenciranje se koristi u svim ostalim teksturama, te smo ovaj matematički izraz upotrijebili na svakoj od njih.

Treća metoda, spajanje tekstura.

Najteži komputacijski zadatak računalu je pozivanje tekstura. Svaki fotorealistični materijal sadrži minimalno 3 teksture (često i više). Kao što je napomenuto ranije u radu, Albedo i Normal mape koriste cijeli RGB spektar. S druge strane, sve ostale (roughness, metallic itd.) su Grayscale. Radi toga Grayscale teksture možemo spajati u RGB slike s više kanala kako bi u jednoj teksturi spremili dvije ili tri i time smanjili zahtjevnost programa za sjenčanje. 

**SLIKA - Rezultat13**
**SLIKA - Rezultat13-1**

**SLIKA - MapeGravel**
**SLIKA - MapeGravelSpojeno**

Blue kanal ne moramo dirat jer ga ne spajamo.
Ne smanjuje se broj insturkcija nego fps i brzina.

**SLIKA - Rezultat13-2Gravel**

