Leírás

3D grafikával kapcsolatos bejegyzések és cikkek. A Quadron Virtual Particle nevű game engine fejlesztése.

Stuff

Anything related to game development.

Contact: darthasylum at gmail dot com

Nemlineáris cikkek

Mi ezeknek a célja?

Leginkább az, hogy magyarul is elérhető legyen programozási anyag, olvasmányos formában.

A cikkek kódja GitHub-ról is elérhető. (*)-al jelölöm azt a cikket ami nemrégiben frissült.

A színek a nehézséget próbálják jelezni, de az, hogy egy cikk piros nem azt jelenti, hogy csak a profiknak szól!

 

 

 

 

 

 

 

 

Hörcsög

The Asylum

3D grafikával kapcsolatos bejegyzések és cikkek. A Quadron Virtual Particle nevű game engine fejlesztése.

Friss topikok

Címkék

HTML

Poligon redukció és LOD

2012.09.19. 00:29 | darthasylum | Szólj hozzá!

Bizonyos esetekben hasznos ha a modellnek alacsonyabb részletességi szintjei is rendelkezésre állnak (pl. mobil eszközökön, ahol nincs is nagyon 4 bájtos index buffer). Persze ezeket elő kéne állítani, például ezzel az algoritmussal. A módszer lényege a súlyfüggvény amit használ, abban nagyon jó, viszont a körítés igen lassú (négyzetes). Apró meggondolásokkal kioptimalizáltam, így maga a poligon redukció baromi gyors. DE. Nem alkalmazható akármilyen mesh-re, ugyanis a duplikált vertexekre elég érzékeny (lyukakat csinál). Azaz mielőtt az algoritmust futtatnánk ki kell optimalizálni a mesh-t, ami nem csak hogy eszméletlenül lassú, de esetenként elfogadhatatlan is (például textúrázott kocka). Két lehetőség van: felokosítani az algoritmust, hogy a duplikált vertexeket egyben kezelje, vagy a redukció után helyrehozni a texkoordokat.

lod2.jpg

A képen bal oldalon az eredeti mesh látható, jobb oldalon pedig 30%-ra redukálva. Elég nyilvánvaló, hogy a súlyfüggvény tényleg baromi jól meg van választva. Kipróbáltam élesben is, nem sikerült észrevennem az ugrást, csak ha két centiről bámultam a monitort (nem ajánlom, nem tesz jót a szemnek).

lod1.jpg

Path tracing

2012.09.17. 19:35 | darthasylum | Szólj hozzá!

Sok szívás után sikerült valami értelmesnek mondható path tracert összedobni. Egyelőre tisztán Monte Carlo módszert használ, azaz nincs benne explicit mintavételezés és egyéb trükkök. A CPU-n fut, alapból négy szálon, és 1000 mintát vesz. A képernyőt felosztja kis kockákra, így hatékonyabban ki tudja használni a CPU-kat. A dolog szépséghibája, hogy a GPU-n ezt real-time is meg lehet csinálni (google: WebGL path tracing).

Néhány furcsaságot még ki kell javítani (csíkózodás). A kód elérhető a shader tutoriálok között (eltés honlap).

pt2.jpg

Érdemes megemlíteni, hogy míg ez több percig tart és egy statikus képet generál, addig a radiosity csak néhány másodperc, és lightmapeket. Utóbbi viszont csak diffúz fényvisszaverődésre képes, míg a path tracing ingyen tud akár caustic-ot is!

Az engineről

2012.09.15. 22:04 | darthasylum | Szólj hozzá!

Mivel "Quantum" néven már létezik engine (és ők már a 3-as verziónál tartanak) valami újat kellett kitalálnom. Végülis "the Quadron virtual particle" lett a neve, a logó pedig egy körte (jó unixos szokásokhoz híven ugyanis ez nem egy körte, hanem egy game engine).

Ha ez nem lenne önmagában is nagyszerű, az engine most már vidáman fut iOS-en. Hamarosan rakok fel screenshotot, meg képet a logóról is.

Addig is egy kép az új radiosity rendererről (még mindig nem jó, és még mindig csak kockákat tud, de sokat javult az előző óta).

rad.jpg

It works!

2012.09.09. 15:36 | darthasylum | Szólj hozzá!

Azt hiszem itt az ideje, hogy egy kezelhetőbb helyre költöztessem a honlapot.

süti beállítások módosítása