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 (Adobe Flash szükséges)

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

Vágás-befedés és Carmack's reverse

2012.10.17. 13:22 | darthasylum | Szólj hozzá!

Magától nem jönne rá egy átlagember, hogy hogyan is lehet a stencil bufferrel befedni egy megvágott objektumot. Kis guglizás után az alábbi algoritmust találtam:

  • depthbe kirajzolni a vágósíkot
  • depth írást lekapcsolni, stencilt be
  • front faceken depth pass esetén incr
  • back faceken depth pass esetén decr
  • kirajzolni a síkot equal operátorral és 1 referenciával


A probléma az ezzel, hogy ha a kamera közeli vágósíkja kettévág egy objektumot, ott nem lesz megfelelő számú increment, és így zfightinghoz hasonló jelenséget tapasztalhatunk.

Itt jön a képbe a Carmack's reverse nevű technika, azaz ne a depth pass-on növeljük a stencilt, hanem a depth fail-en. Az algoritmus az alábbira módosul:

  • depthbe kirajzolni a vágósíkot
  • depth írást lekapcsolni, stencilt be
  • back faceken depth fail esetén incr
  • front faceken depth fail esetén decr
  • kirajzolni a síkot lessequal operátorral és 1 referenciával

Az eredmény magáért beszél. Az egyetlen problémát a nem kétoldalú felületek okozhatják (pl. billboard).

reverse.jpg

A bejegyzés trackback címe:

https://darthasylum.blog.hu/api/trackback/id/tr444853173

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.