[ Mr. Gojca @ 06.09.2006. 14:19 ] @
Poz!

Nacuh da ovde ima vecih gurua nego na gamedev.net, tamo mi nisu pomogli? ;)
Interesuje me da li neko zna kako da napravim varnice u trkackoj igri - kada se vozilo tare o zid. Ne ide mi sa particle sistemom jer billboard uvek gleda ka meni a varnice bi trebale da resembluju na 3D objekat kada se gledaju izokola (zamislite pauziranu igru i varnice u vazduhu i rotaciju kamere oko njih i vide se kao mali izobliceni cilindri). E sad, kako to izvesti bez ubijanja perfomansi sa pravim 3D objektima?

Thx...
[ bkaradzic @ 08.09.2006. 02:17 ] @
Ovo možeš izvesti tako što partikle iscrtaš kao izdužene bilbordove (podebljane linije). Linije crtaš kao poligone na sledeći način: izračunaš normalan vektor između dve krajnje tačke (vA i vB) na liniji, uradiš cross product između ta dva vektora i dobijaš vektor vC. Onda su ivice na kvadratu koji trebaš da renderuješ vA-vC, vA+vC, vB-vC i vB+vC. Imaj u vidu da u zavisnosti iz koje matrice izvlačiš normalu kamere zavisi da li je taj vektor vC u screen ili world prostoru. U ovom slučaju sa varnicama bolje je da koristiš world prostor jer će onda debljina linije koja je dalje od kamere biti manja od one varnice koja je bliža. Svaki put kada se kamera pomera, moraš da promeniš orjentaciju linija, znači vertex shader je idealan za ovakve efekte.