Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Single pass shader multilight

[es] :: 3D programiranje :: Single pass shader multilight

[ Pregleda: 2421 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

glorius
Damir Nikolic
C++ developer
SR

Član broj: 4366
Poruke: 428
*.dynamic.isp.telekom.rs.

ICQ: 208550327


+14 Profil

icon Single pass shader multilight24.02.2010. u 14:07 - pre 171 meseci
Zanima me da li je moguce uraditi osvetljenje u single-pass za vise svetala na nacin koji nece toliko opterecivati pixel shader.

Ja sam uradio na sledeci nacin ( ovo je samo deo shadera):

Code:


// Shader.fx

float3 lightPos[3];  // za 3 svetla

// u vertex shaderu proracunavam poziciju vertexa u world koordinatama (posW) i prosledjujem ga pixel shaderu

float4 PixelShader( float3 posW : TEXCOORD0 )  // ovde idu i normala u world koordinatama, texCoords....
{

       float3 lightVec0 = normalize( lightPos[0] - posW);
       float3 lightVec1 = normalize( lightPos[1] - posW);
       float3 lightVec2 = normalize( lightPos[2] - posW);

       // dalje sledi racunanje diffuse, specular
}



Posto zelim Per-Pixel shading ( nacin za per-vertex mi je poznat ) da li je ovo preskup shader za multilight ( napominjem da mi je cilj da ovaj shader bude per-object i da me trenutno zanima samo ova tehnika - pored multipass i deferred koji su izvan ove diskusije ) i da li je moguce uraditi neke optimizacije kao sto je prebacianje nekog dela proracuna na vertex shader ili mozda postoji neki drugi 'trik'?
EOF
 
Odgovor na temu

tosa
上海, 中国

Član broj: 1811
Poruke: 1342
*.guerrilla-games.com.

ICQ: 14293955
Sajt: https://github.com/milost..


+48 Profil

icon Re: Single pass shader multilight24.02.2010. u 14:42 - pre 171 meseci
Nije to skup shader, ima malo vise racunanja ali to je (prakticno) nebitno jer moderniji GPU-ovi su i onako pravljeni da mogu da proracunaju dosta al' im je problem da imaju dosta texture samplova. Generalno ja se ne bih mnogo opterecivao performansama shader-a koji ces svakako promeniti u buducnosti, ima tu jos dosta posla.
 
Odgovor na temu

[es] :: 3D programiranje :: Single pass shader multilight

[ Pregleda: 2421 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.