Pozicija kamere u volumenu "spotlight" svetla

Pozicija kamere u volumenu "spotlight" svetla

offline
  • Pridružio: 19 Maj 2011
  • Poruke: 297

Napisano: 18 Apr 2012 21:26

Veoma sam slab sa trigonometrijom a treba mi pomoc sa ovim problemom.
Da bih ustedeo broj pixela koji se procesuiraju na ekranu, prvo crtam "volumene", geometrijske oblike koji enkompasuju prostor koji afektuju svetla. Da bih to uradio kako treba treba u zavisnosti od toga da li se kamera pozicije nalazi ili ne u tom volumenu da switch-ujem "kuliranje lica" tog geometrijskog tela (CW/CCW). Za point (omni) svetla sam to lako resio jer su volumeni bili sfere (lopte), pseudo:
if(distance(light.pos, camera.pos) > light.radius)     draw_volume( CCW ); else     draw_volume( CW );
Ali ne znam kako sa "koonama"?
Trazio sam googl-om ali nisam nasao konkretno resenje.

Hvala na izdvojenom vremenu.

EDIT: Kona, ne znam kako se zove na srpskom (kornet? Cool ) pa postavljam sliku:


Dopuna: 21 Apr 2012 12:25

Reseno. Dobio sam pomoc na drugom forumu.
Mozda ce nekog interesovati pa cu postaviti resenje:
// sp_light je shared_ptr bool camInSpotlight(const sp_light& light, const D3DXVECTOR3& pos) {    D3DXVECTOR3 toCamera = pos - light->getPosition();    float dist           = D3DXVec3Length(&toCamera);    if(dist > light->getRadius())    {       return false;    }    toCamera /= dist;    float cosAngle = D3DXVec3Dot(&toCamera, &light->getDirection());    if(cosAngle < light->getOutCone())    {       return false;    }    return true; }



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
Ko je trenutno na forumu
 

Ukupno su 938 korisnika na forumu :: 13 registrovanih, 3 sakrivenih i 922 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: babaroga, bobomicek, crnitrn, hyla, janbo, Jeremiah, Kubovac, KUZMAR, ladro, laurusri, nikoladim, procesor, Trpe Grozni