[ Nothingman @ 01.12.2004. 04:28 ] @
Evo nakon duzeg vremena i brojnih obaveza, ponovo sam se dohvatio OpenGL-a 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. |