i programiranja uopste. Odluchio sam da nastavim tamo gde sam
letos stao, tj. da se jos malo zezam sa MD2 fajlovima i da se polako
privikavam na OpenGL. Medjutim ostao mi je jedan problem koji jos nisam uspeo
da resim,iako sam celo veche razbijao glavu. Ali ovo debagovanje grafickih
programa je izgleda skoro nemoguce bez dva monitora :)
Zato sam dosao ovde da molim za pomoc sve ljude dobre volje koji imaju
neku ideju sta bi mogao biti uzrok, a bogami i resenje mog problema.
No, da predjemo na stvar. Napisao sam program koji ucitava,prikazuje i
animira MD2 fajlove. Medjutim kada ga pokrenem i pocnem da odmicem i
primicem model po Z-osi pojedini delici poligona kao da nestaju, sto
kada se spoji sa animacijom dovodi do iritirajuceg treptanja, iliti
"flickeringa" sto bi rekli Svabo, Amerikanac, a bogami i Rus.
Ono sto je zanimljivo je to da sto je model blizi kameri ovo je
sve manje izrazeno, tako da kada se skroz priblizi treptanje u
potpunosti nestaje. Prvo sto sam pomislio da je to zbog toga
sto sam koordinate tekstura iz MD2 modela morao da delim sa 256
da bi ih normalizovao izmedju 0 i 1.0 pa da tu dolazi do izvesne greske
koja postaje sve veca kada se u igru ukljuce i razne trasformacije, perspektiva
i slicno. Medjutim posto je moje znanje OpenGl-a dosta skromno(letos sam prvi put
poceo povremeno da radim sa njim), ne vidim neki drugi logican nacin kako da
izbegnem tu normalizaciju. Onda sam odluchio da kompletan kod napisem bez
Windows zavrzlama kako bi bio pregledniji, uz nadu da ce mi to pomoci
da shvatim o cemu je rec. Tako sam sve to napisao koristeci GLUT(sa kojim imam
jos manje iskustva nego sa OpenGL-om, i ne bi me cudilo da sam napisao gomilu
gluposti :) ), ali ni to nije pomoglo.
Nadam se da ce neko od vas znati o cemu je rec jer sam se vise stvarno smorio.
Okacio sam EXE file i source code, pa koga ne mrzi neka
pogleda. Code je prilicna anarhija, ali sam veceras ubacio malo komentara da
bi vam bar malo olaksao posao.(Komentari i kod su na engleskom jer
ovde ima ljudi iz Srbije, Hrvatske, Bosne... i svi
pricamo drugim jezikom, pa nam ne ostaje nista drugo nego da se sporazumevamo
na engleskom :) ).
RAR file sa kodom i programom mozete skinuti sa:
[url]http://209.245.59.156/Gimme/25292804/38789671/45824832/6266859D-1528-486C-988E-D7894D52AFF1/0.0488047/2/GlTest.rar[/url]
Komande u programu su sledece:
F6 - pokrece animaciju, F5 - vraca u frame by frame mod, F7 - prethodna animacija,
F8 - sledeca animacija, LEVO - prethodni frame(samo u frmae modu),
DESNO - sledeci frame(samo u frame modu), GORE-DOLE - translacija,
INSERT-PgUP - rotacija, HOME-END - rotacija, F1 - izlaz.
Na kraju, izvinjavam se sto sam vas smorio, ali nadam se da imate razumevanja
jer nisam spavao vec 24 sata :)
Hvala unapred!
p.s. Ako kompajlirate code obavezno iskljucite structure alignment opciju
komajlera.
Q: Are there really any systems where
void main() doesn't work?
A: It has been reported that programs using void main() can crash.
Q: The book I've been using, _C Programing for the Compleat Idiot_,
always uses void main().
A: Perhaps its author counts himself among the target audience.
void main() doesn't work?
A: It has been reported that programs using void main() can crash.
Q: The book I've been using, _C Programing for the Compleat Idiot_,
always uses void main().
A: Perhaps its author counts himself among the target audience.