[ Genex 99 @ 31.05.2003. 11:58 ] @
Šta je to pixel i vertex shader svi pisu o njima a ja blage veze nemam sta je to!

jel zna neko neki dobar tutorijal D3d za pocetnike
[ Reljam @ 31.05.2003. 12:04 ] @
Pixel i vertex shaderi su, uprosceno, programi koji se izvrsavaju na GPUu kada se renderuja svaki pixel ili kada se racuna pozicija (transformise) svaki vertex.

Ovo je prilicno zahtevna oblast 3D grafike, preporucujem ti da se time bavis tek posto savladas pocetne stvari.

U DirectX 9 SDK imas nekoliko shader demoa, kao i ceo program koji sluzi za editovanje shadera gde mozes da vidis rezultate shadera u real timeu.

Za pixel shadere ti je potrebna DX8 (GeForce3) level ili DX9 (GeForce4 (ne MX), Radeon 9000+) graficka kartica.
[ 3MaJ @ 31.05.2003. 15:39 ] @
Biću malo opširniji...

Vertex shader:
Sve manipulacije verteksima (temenima objekata) u prostoru i njihovo projektovanje na ravan ekrana nekada su se vršile na centralnom procesoru. To znači, ako sam hteo da rotiram verteks, procesor je množio njegovu poziciju matricom rotacije, potom matricom projekcije, i tako ga slao graf. kartici na prikazivanje. Posle je došao T&L tako da je kartica uglavnom sama radila taj posao (množila matrice). Vertex shader je korak dalje. Sada je moguće isprogramirati čitavu transformaciju verteksa i taj program proslediti kartici na izvršavanje. Ovo je značajno unapređenje, jer verteks non-stop ostaje u memoriji kartice, što je daleko brže nego da se preko CPU-a obavlja transformacija. Na primer, u novom 3Dmarku, njihanje trave je kompletno isprogramirano VS-om.

Pixel shader:
Ovo je unapređenje, ne samo u brzini kao VS, već i u kvalitetu. Ranije se osvetljenje površine računalo (u najboljem slučaju) tako što se izračuna osvetljenje u njenim temenima (po vrlo rudimentiranoj formuli), pa se to posle interpolira po površini. Ovo je prvo radio CPU, pa posle T&L na kartici. Sada je moguće napisati (bukvalno) bilo koju jednačinu osvetljenja (pa i Raytrace) koju će kartica sama da izvršava. Najbolji primer je voda u novom 3dmarku, gde se koriste Frenelove jednačine refleksije i refrakcije. Dalje, moguće je praviti proceduralne teksture (kao mermer na slonovima u 3dmarku) koje se dinamički menjaju itd. To je najveća prednost PS-a a ima ih još mnogo.

Kad su se PS/VS pojavili pisali su se u asembleru, a sada se to radi u HLSL-u ili CG-u, jezicima sličnim C-u.

Brojni primeri postoje na www.ati.com/developer, ili developer.nvidia.com
[ Genex 99 @ 31.05.2003. 16:09 ] @
Hvala ti na objašnjenju.

Da li mozda znas URL-ove primjera PS/VS -ova, a da ne bude nvidia ili ati, pošto su jako zakomplikovali svoj sajt. Mislim da li znas mjesto odakle se moze skinuti veliki broj primjera sa source naravno;-)
[ 3MaJ @ 31.05.2003. 19:00 ] @
Probaj na
www.codesampler.com (idi na "source code")
www.ultimategameprogramming.com
[ vertex @ 22.02.2005. 23:04 ] @
Trebao si mene da pitas :)