|
bkaradzic Branimir Karadžić Titan Studios Seattle, WA
Član broj: 14953 Poruke: 1559 *.hsd1.ca.comcast.net.
|
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.
|