OpenGL i kierunek światła

0

Napisałem pośród kodu coś takiego :

[code]
gllightfv(GL_LIGHT0, GL_SPOT_DIRECTION, @Swiatlo.kierunek);
gllightfv(GL_LIGHT0, GL_SPOT_CUTOFF, @Swiatlo.cutoff);
[/code]
swiatlo.kierunek to tablica czteroelementowe glfloat, a swiatlo.cutoff to
zmienna typu glfloat.

Niby miało być tak pięknie, że miało mi świecić swiatełko z pozycji
swiatlo.kierunek o kącie rozwarcia stożka światła cutoff, ale kurde nic
się nie dzieje, jest całkiem ciemno. Nie mówcie mi tylko, że może nie
świeci w tym kierunku, co bym chciał, bo żeby sprawdzić
wyprodukowałem wielką ścianę i na nią też nie świeci. Pomocy!! ;-(

0

moze cosik z tego wywnioskujesz :>
LightPos : array [0..3] of glfloat = ( 0.0, 4.0, 6.0, 1.0 );

glLightfv(GL_LIGHT0, GL_POSITION, @LightPos); //pozycja swiatla a nie jakies swiatlo kierunek :P

jeszcze glenable(gl_light0);
i chyba gl_linghtning
nie pamietam czy nie trzebab bylo jeszcze dodatkowo ustawic materiału kazdej macierzy na kotra pada swiatlo, bo ze swiatel jestem ciemny :(

0

Widzę że jakaś nabita ze mnie jest, więc wyjaśnię, że swiatlo.kierunek to jest u mnie tak:
[code]
type TSwiatlo = object
kierunek : array[0..2] of glofloat;
.
.
end;

var
swiatlo : TSwiatlo;
[/code]

gl_light0 oraz gl_linghtning ustawione było. Podobnie jak pozycja
światła, ale mi chodziło o kierunek świecenia światła skupionego (no nie jak laser, ale jak z latarki na przykład), ale o zadanym kącie stożka
światła.

0

to ja juz jestem bardzej ciemny =]
sproboja jak mowilem zobaczyc cos z tym materialem
aha i sproboj jeszcze zrobic glnormal3f(i wierzcholi tej sciany)
moze pomoze,, kurede napsialbym to w delphi ale troche duzo roboty a tutaj umeiszczam kod bglcmd (w ktorym wsyzstki dziala z kilkomaobjasnieniami co jest czym i co co robi) wiec mzoe wywnioskujesz cos z tego (niektore linijki nie sa potrzebne :) ) inaczej pomoc ci nie moge

glenable(gl_texture_2d);
glenable(gl_lightning);
glenable(gl_light1);
glenable(gl_front_face);
slightnormal; {

0

No ja właśnie wiem jak inicjować, i działa mi każde światło (znaczy diffuse, specular i ambient) oprócz tego kierunkowego. No nic, dzięki, może coś gdzieś jeszcze znajdę, albo coś wykombinuję. Może to tak naprawdę w ogóle nie działa, bo ja to GL_SPOT_DIRECTION w helpie znalazłem, a nigdzie więcej wzmianki o tym nie widziałem. [glowa]

0

czekaj wiem!!!!! moze twoja karta graficzna nie obsluguje efektu tego co wlasnie chcesz zrobic? co? bo tesh tak moze byc :)

0

Może.. W sumie mam biedną Rivę TNT 16Mb [wstyd] . Dokumentacji do niej w życiu nie czytałem, bo jak ją kupiłem, to w sumie obchodził mnie tylko Quake...

//DOPISANE
A da się jakoś sprawdzić, czy karta obsługuje ten efekt. Albo sprawdzić,
jakie efekty obsługuje ta karta?

1 użytkowników online, w tym zalogowanych: 0, gości: 1