Forum Sveta kompjutera

Nazad   Forum Sveta kompjutera > Test Run > Programiranje > Pravljenje igara

Pravljenje igara Programski jezici, tehnike, alatke u službi pravljenja igara...

Odgovor
 
Alatke vezane za temu Vrste prikaza
Stara 27.7.2007, 23:02   #1
Patton
Deo inventara foruma
 
Avatar korisnika Patton
 
Član od: 1.11.2005.
Lokacija: Silent Hill
Poruke: 4.647
Zahvalnice: 157
Zahvaljeno 904 puta na 493 poruka
Slanje poruke preko ICQ-a korisniku Patton Slanje poruke preko MSN-a korisniku Patton Slanje poruke preko Yahooa korisniku Patton
Cool 3d Engine - ali za mobilne uređaje!

UVOD U CELU PRICU

Pa ovako. U poslednje vreme imam nesto vise slobodnog vremena, a i javila se neka potreba za ispoljavanje kreativnosti kod mene; stoga sam resio da zapocnem jedan programerski projekat, onako za sebe posle duzeg vremena. Nisam razradio sve detalje, nisam trosio vreme na organizaciju, a i ne gledam daleko u buducnost projekta, niti znam kuda ce me sve ovo odvesti. Resio sam onako da ga zapocnem, pa da vidimo kako ce se razvijati i da li ce imati neki potencijal. Mozda napravim nesto pametno, mozda se smorim posle mesec dana, videcemo, sve je moguce. Uostalom, ovim projektom ne bezim daleko od svog pravog posla, tako da ako nista drugo, usavrsavam se i skupljam nova iskustva.

Dakle, kao sto se iz naslova moze videti, zapoceo sam rad na 3D engine-u. Iskustva iz te oblasti imam, jer sam nesto slicno radio pre 8 godina u asembleru za DOS i malo posle toga u C++ koristeci OpenGL. Ovo sto sad planiram se ipak malo razlikuje od toga. To je 3D engine za "pametne" mobilne telefone. Krajnji cilj mi je naravno, da ga napravim tako da moze lako da se portuje na bilo koju mobilnu platformu; ali otom potom.

Po cemu se mobilni uredjaji razlikuju od desktop masina? Pre svega imaju mnogo slabije procesore i mnogo manje memorije, tako da kod mora biti jako optimizovan. Imaju ekrane mnogo manje rezolucije i ta rezolucija varira od 176x208 (stariji Symbian telefoni) do 320x320 (noviji Palm uredjaji), tako da grafika mora biti optimizovana za sve rezolucije. Nemaju nikakve 3D akceleratore i rad sa bilo kakvim realnim (float) brojevima je jako sporo, tako da sve sto se pise mora se pisati "rucno". Sta znati to rucno? To znaci da koristeci OpenGL, treba vam tacno 13 naredbi da biste dobili 4-ugaoni texturirani poligon u kojem svaki vertex ima svoju boju, pa se na osnovu tih boja i textura drugacije farba. Ako hocete to isto da uradite softverski, pored solidnog znanja matematike, trebace vam i jedno 300 linija koda (po mogucstvu bez bagova). Cemu ovakav mazohizam? Kazem vam, imam viska slobodnog vremena + jedino ako rucno pisete neke stvari, shvaticete kako te stvari zaista rade i gde se primenjuje ta silna matematika koju svi ucimo u skolama i na fakultetima.

Odlucio sam takodje da „dnevnik“ tog projekta vodim na ovom forumu. Mozda se nekom svidi, mozda neko ima neki predlog, sugestiju, mozda ce neko nesto da nauci od mene, mozda cu ja nauciti nesto od nekoga; ako sve propadne i odustanem od svega, imacu barem materijala za knjigu, da je objavim i zaradim koji filer. Vasi komentari su dobrodosli, isto tako i pitanja; sa druge strane, svaki offtopic ce se momentalno brisati.
Patton je offline   Odgovor sa citatom ove poruke
Stara 27.7.2007, 23:02   #2
Patton
Deo inventara foruma
 
Avatar korisnika Patton
 
Član od: 1.11.2005.
Lokacija: Silent Hill
Poruke: 4.647
Zahvalnice: 157
Zahvaljeno 904 puta na 493 poruka
Slanje poruke preko ICQ-a korisniku Patton Slanje poruke preko MSN-a korisniku Patton Slanje poruke preko Yahooa korisniku Patton
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Posto svako ko se pojavi na ovom forumu sa ovako lepom uvodnom recju, a da pritom, nista nije uradio, biva momentalno proteran i ismejavan naredne dve stranice, ja sam odlucio da odmah i postujem neke stvarcice koje sam radio protekla tri dana

Na vasu veliku zalost, (za sada) postovacu samo screenshotove, jer se radi o programu za mobilne uredjaje, tako da cete morati da mi verujete da ove slike nisam radio u Mayi i posle obradjivao u Photoshopu. Test platforma je Treo u PalmOS verziji. Ekran je rezolucije 320x320 sa 16bit paletom boja (5:6:5). Kolicina memorije je oko 20mb, ali to i nije toliko bitno.
Patton je offline   Odgovor sa citatom ove poruke
Sledećih 2 korisnika se zahvaljuje korisniku Patton na korisnoj poruci:
3dM@niak (27.7.2007), MG-RAY (28.7.2007)
Stara 27.7.2007, 23:06   #3
Patton
Deo inventara foruma
 
Avatar korisnika Patton
 
Član od: 1.11.2005.
Lokacija: Silent Hill
Poruke: 4.647
Zahvalnice: 157
Zahvaljeno 904 puta na 493 poruka
Slanje poruke preko ICQ-a korisniku Patton Slanje poruke preko MSN-a korisniku Patton Slanje poruke preko Yahooa korisniku Patton
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

PRVI KORAK – CRTANJE POLIGONA

Dakle pocinjemo… moj prvi korak u ovom projektu... sta je ono sto cini jednu 3d scenu, sta je ono sto mi zapravo vidimo na ekranu? To su poligoni. Svaka scena se sastoji iz objekata, svaki objekat se sastoji iz poligona. Za pocetak, ne interesuje me kako cu organizovati scenu, ne interesuje me kako cu organizovati objekte, ne interesuje me (a i tek treba da naucim) kako cu pomerati kameru kroz scenu; interesuje me samo kako cu nacrtati proizvoljno definisan poligon. Na brzaka sam sklepao par stvari, cisto da bih imao sa cime da radim:

- da mogu da definisem koordinate vertexa nekog 3d objekta
- da mogu da definisem stranice tog objekta (koji vertexi cine koju stranicu)
- da mogu te vertexe da rotiram u prostoru oko sve tri ose
- da mogu te izrotirane vertexe da transformisem u 2d tacke koje cu prikazivati na ekran


Trenutno nije bitno kako ove stvari koje sam do sad uradio rade, a verujem da mogu jos dosta i da se optimizuju; objasnicu ih kada bude bilo vreme za to. Bitno je: da sam dobio te transformisane 2d tacke pomocu kojih cu crtati poligone. Svaki takav poligon se sastoji iz cetiri tacke, a svaka tacka za sada ima:

- X koordinatu na 2d ekranu
- Y koordinatu na 2d ekranu
- BOJA koja se sastoji iz R, G, B komponente i Alfa kanala


Bitna stavka o kojoj treba razmisljati. Na koje sve nacine planiramo da crtamo poligone? Na raspolaganju nemamo azdaju od masine, tako da moramo paziti na performanse. Kakve 3d igre postoje sada za telefone? Maximum koji sam ja video jeste texturirani poligon bez osvetljenja ili eventualno sa nekim laznim osvetljenjem (kao npr. Doom II). Tako da sam (opet) za pocetak odlucio da napravim funkcije za crtanje:

- tackastih poligona svaka tacka poligona predstavljena je... hmm... tackom
(ovo ce se koristiti samo za neka testiranja i debagovanje)

- wireframe poligona gde su tacke poligona spojene obicnim linijama
http://en.wikipedia.org/wiki/Wire_frame_model

- flatshade poligona gde je ceo poligon obojen jednom bojom
http://en.wikipedia.org/wiki/Shading (slika pri dnu stranice)

- gouraud shade poligona gde svaka tacka ima odredjenu boju i interpoliranjem i
mesanjem tih boja dobija se poligon koji nije obojen konstantnom bojom
http://en.wikipedia.org/wiki/Gouraud_shading

- texture mapped poligona kod kojih se slika lepi na stanicu
http://en.wikipedia.org/wiki/Texture_mapping

Uradio sam prva cetiri nacina, pre nego sto se bacim na ovaj poslednji (najtezi), hajde prvo da vidimo kakvi su rezultati. Kao primer koristim najprostiji moguci objekat – kocku. Kako vam se cini
Priložene slike
Kliknite na sliku za veću verziju

Ime:	1.gif
Viđeno:	22 puta
Veličina:	2,2 KB
ID:	9693   Kliknite na sliku za veću verziju

Ime:	2.gif
Viđeno:	17 puta
Veličina:	2,1 KB
ID:	9694   Kliknite na sliku za veću verziju

Ime:	3.gif
Viđeno:	20 puta
Veličina:	4,9 KB
ID:	9695  
Patton je offline   Odgovor sa citatom ove poruke
Stara 27.7.2007, 23:45   #4
Andross
Kekule Mekule
 
Avatar korisnika Andross
 
Član od: 8.12.2005.
Lokacija: Beograd
Poruke: 4.129
Zahvalnice: 649
Zahvaljeno 1.348 puta na 690 poruka
Slanje poruke preko Skypea korisniku Andross
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Pa... Kockasto
Ne znam koliko je tesko uraditi kocku na mobile uredjaju, ali verovatno je to dobro sto si do sada postigao. Samo tako nastavi!!!
Andross je offline   Odgovor sa citatom ove poruke
Stara 28.7.2007, 0:45   #5
Stevvan
Veteran
 
Član od: 17.12.2005.
Lokacija: Zarkovo, Beograd
Poruke: 1.114
Zahvalnice: 97
Zahvaljeno 179 puta na 104 poruka
Slanje poruke preko MSN-a korisniku Stevvan Slanje poruke preko Skypea korisniku Stevvan
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Ako se ta kocka rotira/pomera da li bi mogao da kazes koliki je fps. Mislim da bi to dalo najbolju sliku koliko je engine trenutno napredovao.
Stevvan je offline   Odgovor sa citatom ove poruke
Stara 28.7.2007, 6:19   #6
EclipsE
Starosedelac
 
Član od: 16.4.2006.
Lokacija: Scary Movie Reputacija: ■■□
Poruke: 1.337
Zahvalnice: 378
Zahvaljeno 279 puta na 196 poruka
Slanje poruke preko Skypea korisniku EclipsE
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!



kad zavrsish dajesh source?
EclipsE je offline   Odgovor sa citatom ove poruke
Stara 28.7.2007, 8:25   #7
Patton
Deo inventara foruma
 
Avatar korisnika Patton
 
Član od: 1.11.2005.
Lokacija: Silent Hill
Poruke: 4.647
Zahvalnice: 157
Zahvaljeno 904 puta na 493 poruka
Slanje poruke preko ICQ-a korisniku Patton Slanje poruke preko MSN-a korisniku Patton Slanje poruke preko Yahooa korisniku Patton
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

@Andross
Ja sam samo primera radi uzeo kocku dok ne napravim sve shading funkcije za poligone. U ovaj program sto imam sad mozes ubaciti bilo koji objekat, problem je samo sto rucno moras da mu definises tacke i stranice, pa je to malo zamarajuce. Kasnije cu verovatno napraviti funkcije za importovanje objekata. Evo kako je definisana ta kocka:
Kod:
vertex_Assign(&vertex[0], -UNIT,-UNIT,-UNIT, 0, 0, 255, 0);
vertex_Assign(&vertex[1],  UNIT,-UNIT,-UNIT, 0, 0, 96, 0);
vertex_Assign(&vertex[2], -UNIT, UNIT,-UNIT, 0, 0, 160, 0);
vertex_Assign(&vertex[3],  UNIT, UNIT,-UNIT, 0, 0, 255, 0);
vertex_Assign(&vertex[4], -UNIT,-UNIT, UNIT, 0, 0, 0, 0);
vertex_Assign(&vertex[5],  UNIT,-UNIT, UNIT, 0, 0, 96, 0);
vertex_Assign(&vertex[6], -UNIT, UNIT, UNIT, 0, 0, 160, 0);
vertex_Assign(&vertex[7],  UNIT, UNIT, UNIT, 0, 0, 255, 0);
face_Assign(&faces[0], 0, 1, 3, 2, 0, 0, 255, 0);
face_Assign(&faces[1], 1, 5, 7, 3, 0, 0, 224, 0);
face_Assign(&faces[2], 4, 6, 7, 5, 0, 0, 192, 0);
face_Assign(&faces[3], 0, 2, 6, 4, 0, 0, 160, 0);
face_Assign(&faces[4], 0, 4, 5, 1, 0, 0, 128, 0);
face_Assign(&faces[5], 2, 3, 7, 6, 0, 0, 96, 0);
Ovaj UNIT mi je neka proizvoljna jedinica za pocetak.
Svaki vertex dobija parametre: x, y, z, r, g, b, a.
Svaka stranica dobija parametre: vertex1, vertex2, vertex3, vertex4, r, g, b, a.

@Stevvan
Da, kocka se naravno rotira, na slikama sam samo fixirao uglove kako bi se najbolje video dosadasnji rad. Ovo za sada ide jaaako sporo... gouraud shading ide ispod 10fps sigurno; raduje me samo sto ima dosta prostora za optimizaciju:

1. U svakom frejmu ja brisem ceo ekran - nepotrebno, jer ako prikazujem samo jedan objekat na sceni, treba naci tacku koja je skroz gore i tacku skroz dole i brisati ekran samo izmedju tih tacaka.
2. Koristim 16bit mod ekrana, to znaci da je i pisanje po ekranu mnogo sporije i da su kalkulacije za boje utrostrucene (r,g,b). Svaka brza 3d igra radi u 8bit modu sa indexiranom paletom. Takva igra ima na raspolaganju mnooogo manje boja, ali se i kalkulacije ubrzaju tri puta.
3. Planiram da koristim sve prednosti svake platforme. Objasnicu prvo kako radi Palm. Pre su procesori u tim uredjajima bili Motorola 68K. Noviji uredjaji imaju ARM procesore, ali da bi zadrzali kompatibilnost sa starim aplikacijama, ti uredjaji sad emuliraju M68K; tako da svaka aplikacija radi mnogo sporije, jer se emulira. Postoji nacin da se pise ARM kod i to nije nikakav problem. Tako da trenutno za Palm... 8bit ekran + ARM je moj kec u rukavu

@EclipsE
Naravno da NE
Svaki put kad zavrsim neki korak dajem objasnjenje kako se to radi uz slike i pseudo kod. Pod uslovom da vas zanima kako su nekada davno radjene 3d igre
Patton je offline   Odgovor sa citatom ove poruke
Stara 28.7.2007, 9:21   #8
MG-RAY
Starosedelac
 
Član od: 15.2.2006.
Lokacija: Midlands
Poruke: 1.523
Zahvalnice: 277
Zahvaljeno 307 puta na 207 poruka
Slanje poruke preko Skypea korisniku MG-RAY
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Pa naravno da nas zanima...makar mene

Hajde "baci" trenutni .prc, hocu da vidim kako izgleda (Pod uslovom da je PalmOS4, jel... )

btw. da li ovo znaci da si napustio projekat tvoje davno najavljene igre ?

Poslednja ispravka: MG-RAY (28.7.2007 u 9:32)
MG-RAY je offline   Odgovor sa citatom ove poruke
Stara 28.7.2007, 10:14   #9
Patton
Deo inventara foruma
 
Avatar korisnika Patton
 
Član od: 1.11.2005.
Lokacija: Silent Hill
Poruke: 4.647
Zahvalnice: 157
Zahvaljeno 904 puta na 493 poruka
Slanje poruke preko ICQ-a korisniku Patton Slanje poruke preko MSN-a korisniku Patton Slanje poruke preko Yahooa korisniku Patton
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Citat:
MG-RAY kaže: Pregled poruke
Pa naravno da nas zanima...makar mene
OK, objasnicu kako crtam poligone, cim mi proradi texture mapping. Trenutno imam nekih problema sa time

Citat:
MG-RAY kaže: Pregled poruke
Hajde "baci" trenutni .prc, hocu da vidim kako izgleda (Pod uslovom da je PalmOS4, jel... )
Ovo je za PalmOS5 i treba ti uredjaj sa ekranom 320x320x16 da bi radilo. Mozda bude neki .prc kad malo odmaknem sa projektom.

Citat:
MG-RAY kaže: Pregled poruke
btw. da li ovo znaci da si napustio projekat tvoje davno najavljene igre ?
Uf, nazalost nisam imao vremena cak ni da ga zapocnem. Btw, hteo sam da uradim remake neke stare igre u OpenGL-u. Medjutim suvise je to veliki i komplexan projekat, da bih mogao da izdvojim vreme za njega pored sadasnjeg posla. Zato sam zapoceo ovaj projekat, koji je mnogo prostiji, ali meni barem, i mnogo zanimljiviji.
Patton je offline   Odgovor sa citatom ove poruke
Stara 28.7.2007, 22:05   #10
bobi
Deo inventara foruma
 
Član od: 6.11.2005.
Lokacija: Iznad reke, ispod drveća.
Poruke: 3.218
Zahvalnice: 58
Zahvaljeno 329 puta na 180 poruka
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Iako se ne razumem u programiranje... bla...bla...

Samo ću napomenuti da je po meni mnogo bolje da se radi flatshade algoritmom, negoli gouraud algoritmom. Zašto? Pa zato što flat shade algoritam ljudske oči kapiraju mnogo bolje nego gouraud. Dok flat shade sa svojim jednobojno obojenim svetlećim poligonima može da podseća i na crtani film (što je super iskoristiti za neku avanturu npr.), gouraud svojim navodnim senčenjem i oponašenjem fizičkih atributa svetlosti deluje jako CG. Senčenjem u ovom slučaju ništa ne dobijamo, sem da poligoni deluju ružnije, t.j. stiče se utisak u oku posmatrača da nešto nije u redu sa svetlom i kako ono pada na objekte.
Dakle, po meni, daleko je bolje raditi sa stilizovanom crtanom varijantom u kojoj će svaki poligon imati svoju boju, nego pribegavati polu-četvrt rešenjima, koje samo mogu da izgledaju, ponavljam, computer generated.
Uostalom, i ja kad sam igrao prvi alien breed 3D na mojoj Amigi 1200, bez trunke razmišljanja sam odmah birao flat shade tehniku senčenja
bobi je offline   Odgovor sa citatom ove poruke
Stara 29.7.2007, 6:31   #11
EclipsE
Starosedelac
 
Član od: 16.4.2006.
Lokacija: Scary Movie Reputacija: ■■□
Poruke: 1.337
Zahvalnice: 378
Zahvaljeno 279 puta na 196 poruka
Slanje poruke preko Skypea korisniku EclipsE
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Lepse nije ali treba mu manje vremena za racunanje u odnosu na g shading...
EclipsE je offline   Odgovor sa citatom ove poruke
Stara 29.7.2007, 9:45   #12
MG-RAY
Starosedelac
 
Član od: 15.2.2006.
Lokacija: Midlands
Poruke: 1.523
Zahvalnice: 277
Zahvaljeno 307 puta na 207 poruka
Slanje poruke preko Skypea korisniku MG-RAY
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Pa... sada sami odredite sta je lepse

(per vertex shading, no tex.)

Naravno, imao sam priliku da probam par igara za PalmOS za MDBVX CPU, znaci na 33MHZ za 5.1MIPS... Jedna bez teksturiranja sa flat shadingom, poprilicno brzo radi, druga sa teksturiranjem, takodje bez osvetljenja...pa, vuce se.
Priložene slike
Kliknite na sliku za veću verziju

Ime:	flat.png
Viđeno:	31 puta
Veličina:	28,7 KB
ID:	9720   Kliknite na sliku za veću verziju

Ime:	gouraud.png
Viđeno:	37 puta
Veličina:	44,0 KB
ID:	9721  

Poslednja ispravka: MG-RAY (29.7.2007 u 10:50) Razlog: Zaboravio sam da normalizujem vec. svetla... sve bljeshti :)
MG-RAY je offline   Odgovor sa citatom ove poruke
Stara 29.7.2007, 10:00   #13
EclipsE
Starosedelac
 
Član od: 16.4.2006.
Lokacija: Scary Movie Reputacija: ■■□
Poruke: 1.337
Zahvalnice: 378
Zahvaljeno 279 puta na 196 poruka
Slanje poruke preko Skypea korisniku EclipsE
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

stavi i jedan per pixel
EclipsE je offline   Odgovor sa citatom ove poruke
Stara 29.7.2007, 10:05   #14
MG-RAY
Starosedelac
 
Član od: 15.2.2006.
Lokacija: Midlands
Poruke: 1.523
Zahvalnice: 277
Zahvaljeno 307 puta na 207 poruka
Slanje poruke preko Skypea korisniku MG-RAY
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Citat:
EclipsE kaže: Pregled poruke
stavi i jedan per pixel
Mislim da to jednostavno nema smisla

evo iste stvari sa teksturom, ponovo sencenje po vertexu, jer ovo drugo u ovom slucaju, rekoh, nema smisla

no, jedna je stvar odraditi ovo u shaderu, potpuno druga napisati ceo algoritam za sencenje od 0 (mada se i ovde to radi rucno ).
Priložene slike
Kliknite na sliku za veću verziju

Ime:	flattex.jpg
Viđeno:	29 puta
Veličina:	88,4 KB
ID:	9722   Kliknite na sliku za veću verziju

Ime:	gouraudtex.jpg
Viđeno:	35 puta
Veličina:	80,0 KB
ID:	9723  

Poslednja ispravka: MG-RAY (29.7.2007 u 10:33)
MG-RAY je offline   Odgovor sa citatom ove poruke
Stara 31.7.2007, 20:28   #15
Patton
Deo inventara foruma
 
Avatar korisnika Patton
 
Član od: 1.11.2005.
Lokacija: Silent Hill
Poruke: 4.647
Zahvalnice: 157
Zahvaljeno 904 puta na 493 poruka
Slanje poruke preko ICQ-a korisniku Patton Slanje poruke preko MSN-a korisniku Patton Slanje poruke preko Yahooa korisniku Patton
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Evo mene posle par dana. U velikoj sam guzvi na poslu, tako da ne stizem puno da radim na projektu, jer obicno dodjem mrtav kuci

Gouraud shading se moze koristiti za sencenje objekata na ekranu. Recimo imate kocku, pa uradite jedan texture mapping, a onda primenite gouraud shading na alfa kanal teksture u odnosu na poziciju svetla i dobijate time fenomenalnu osencenu kocku. Medjutim, to bi najverovatnije islo veoma sporo i pitanje je da li cu raditi takve stvari; bitno mi je da sam uradio mogucnost i za tako nesto, pa posle svih hardcore optimizacija koje planiram da uradim, ako ostane nesto cpu time-a i gouraud shading ce naci svoju primenu

I dalje me muci texture mapper. Napravio sam mali napredak u odnosu na onu vikend verziju engine-a, ali opet se desava... hmmm... kao da u proracunima dobijem neki offset koji "izleti" van texture, pa mi upise neku brlju na ekran. Da ne bude sada da postujem samo svoje uspehe, evo sada postujem i nesto sto ne radi bas kako treba. Dobro izcrtana textura se vidi na donjoj stranici, dok je gornja sacuvaj boze
Priložene slike
Kliknite na sliku za veću verziju

Ime:	4.gif
Viđeno:	19 puta
Veličina:	1,7 KB
ID:	9816  
Patton je offline   Odgovor sa citatom ove poruke
Stara 31.7.2007, 20:34   #16
bobi
Deo inventara foruma
 
Član od: 6.11.2005.
Lokacija: Iznad reke, ispod drveća.
Poruke: 3.218
Zahvalnice: 58
Zahvaljeno 329 puta na 180 poruka
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Verovatno ti ovo ništa neće biti od koristi...

Elem, to se dešava ponekad u 3ds maxu i rešenje je promeniti offset ili tileing za trunku... znači sa 0.0 na 0.001
Uvek sam mislio da je to bug do maxa.
bobi je offline   Odgovor sa citatom ove poruke
Stara 3.8.2007, 1:59   #17
Patton
Deo inventara foruma
 
Avatar korisnika Patton
 
Član od: 1.11.2005.
Lokacija: Silent Hill
Poruke: 4.647
Zahvalnice: 157
Zahvaljeno 904 puta na 493 poruka
Slanje poruke preko ICQ-a korisniku Patton Slanje poruke preko MSN-a korisniku Patton Slanje poruke preko Yahooa korisniku Patton
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Konacno sam uspeo!!!

Juce sam pokusavao svasta, trazio gresku u texturemap rutini, ali nije mi se dalo da je nateram da proradi. Danas posle posla sam se bas zainatio. Seo oko 19h da radim i posle dva sata mucenja resio da ipak otvorim knjigu i da pokusam da prokljuvim sta to radim pogresno

Imam dobre tutorijale, dobro sam naucio teoriju iz njih, i cisto onako iz zezanja resio da umesto cetvorougaonih poligona pokusam da nacrtam texturirani trougao prateci neke primere iz jednog od tih tutorijala. Woalaa, upornost je urodila plodom. Na mom ekranu je oko 1:30am zaigrao jedan trougao sa polovinom texture. Da bi mapirali celu texturu, potrebna su naravno dva trougla koja cine kvadrat. Nisam 100% siguran, ali nekako mi se cini da crtanje 2 trougla ide brze nego crtanje jednog cetvorougla

Metoda kojom se koristim zove se linear texture mapping i ustvari je laznjak, jer taj metod podrazumeva da sve tacke poligona stoje uvek poravnate po Z osi (a to se desava skoro nikad). Ovom metodom se dobija malo "lelujanje" texture unutar poligona (vidi sliku u sredini; textura izgleda malo razvuceno), ali neverovatan speedup sto se tice samih performansi. Kako se to lelujanje moze zamaskirati? Prvo, koriscenjem textura kod kojih ce se to manje primetiti. Drugo, trougao koji crtamo mozemo podeliti na dva manja trougla i time radimo dupli posao, ali ce i rezultat izgledati vise nego duplo lepse. Trece, koriscenjem perspective texture mapping-a, kod koga se za svaku liniju u trouglu racuna Z vrednost izmedju tacaka koje se spajaju. Ubacicu i ovaj metod, ali mislim da ce biti isuvise spor.

Kod je totalno u haosu od debagovanja i isprobavanja svega i svacega. Morace da padne jedno generalno oranje i da se sve sredi sada kada je konacno proradilo. Planiram da uradim i prvi talas optimizacija i bolju organizaciju podataka. Uradicu speed test i predpostavljam da cu preci na trouglove, sto znaci prepravka flat i gouraud shader-a. Jedva cekam da ponovo prionem na posao. Sutra poslepodne i za vikend nisam tu, tako da ce to pricekati sve ponedeljak ili mozda utorak
Priložene slike
Kliknite na sliku za veću verziju

Ime:	5.gif
Viđeno:	15 puta
Veličina:	1,9 KB
ID:	9941   Kliknite na sliku za veću verziju

Ime:	6.gif
Viđeno:	14 puta
Veličina:	1,9 KB
ID:	9942   Kliknite na sliku za veću verziju

Ime:	7.gif
Viđeno:	8 puta
Veličina:	1,7 KB
ID:	9943  
Patton je offline   Odgovor sa citatom ove poruke
Stara 11.8.2007, 9:15   #18
MG-RAY
Starosedelac
 
Član od: 15.2.2006.
Lokacija: Midlands
Poruke: 1.523
Zahvalnice: 277
Zahvaljeno 307 puta na 207 poruka
Slanje poruke preko Skypea korisniku MG-RAY
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

I... kako napreduje projekat ?
MG-RAY je offline   Odgovor sa citatom ove poruke
Stara 11.8.2007, 22:23   #19
Patton
Deo inventara foruma
 
Avatar korisnika Patton
 
Član od: 1.11.2005.
Lokacija: Silent Hill
Poruke: 4.647
Zahvalnice: 157
Zahvaljeno 904 puta na 493 poruka
Slanje poruke preko ICQ-a korisniku Patton Slanje poruke preko MSN-a korisniku Patton Slanje poruke preko Yahooa korisniku Patton
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Hvala MG-RAY sto si me podsetio da treba malo da updateujem ovu temu

Vidim nisam postovao citavih 8 dana, od kako mi je proradio texture mapper. Nisam imao puno vremena da radim na projektu, od silnog posla. Nikada nemojte govoriti nadleznima na poslu kog datuma idete na odmor, jer ce vas do tog datuma muciti kao roba. Ja se zahebo, pa sam mojima rekao mesec i po dana unapred

Vratio sam se sa "oranja"; kod sada izgleda mnogo lepse i dodao sam mnostvo komentara. Glavna stvar jeste da sam presao na trouglove, umesto 4-ugaonih poligona koje sam koristio prvobitno. Cini mi se kao da se renderuju brze pa cu za sada ostaviti tako. Ubacio sam i klipovanje poligona, tj. da se ceo poligon pravilno izcrtava iako su mu jedna ili dve tacke van ekrana. Uradio sam i bolju organizaciju podataka, strukture trouglova i njihovih stranica, mada verovatno cu jos dosta raditi na tome. Trenutno me muce dve stvari: definisanje objekata je mukotrpan posao (jos uvek nisam napravio nacin da se nekako importuju ili lakse definisu), rutina za texture mapping ima neki bag koji je bas uocljiv kada se poligon uvelica preko citavog ekrana, a sto je najgore taj bag se ne pojavljuje uvek, vec samo kod odredjenih uglova kada se rotira poligon. Deluje bas kao zeznuta stvar, tako da sam i to ostavio po strani za sada (hej barem se prepoznaje textura na njemu)

Pre nego sto uradim bolji sistem za definisanje objekata, pre toga bih zeleo da zapocnem igranje sa kamerom. Eh da mi je sada OpenGL, resio bih to jednom funkcijom... ovako, moram opet malo da otvorim tutorijale i knjigu iz matematike kako bih savladao ovaj malo veci korak.
Priložene slike
Kliknite na sliku za veću verziju

Ime:	7.gif
Viđeno:	15 puta
Veličina:	3,1 KB
ID:	10289   Kliknite na sliku za veću verziju

Ime:	8.gif
Viđeno:	9 puta
Veličina:	2,7 KB
ID:	10290   Kliknite na sliku za veću verziju

Ime:	9.gif
Viđeno:	13 puta
Veličina:	10,6 KB
ID:	10291  
Patton je offline   Odgovor sa citatom ove poruke
Stara 12.8.2007, 9:12   #20
MG-RAY
Starosedelac
 
Član od: 15.2.2006.
Lokacija: Midlands
Poruke: 1.523
Zahvalnice: 277
Zahvaljeno 307 puta na 207 poruka
Slanje poruke preko Skypea korisniku MG-RAY
Određen forumom Re: 3d Engine - Ali za mobilne uredjaje!

Ovde ima nesto o textrure mappingu, radjeno je za Javu, ali princip je isti, zar ne...
MG-RAY je offline   Odgovor sa citatom ove poruke
Odgovor

Bookmarks sajtovi

Alatke vezane za temu
Vrste prikaza

Vaš status
Ne možete postavljati teme
Ne možete odgovarati na poruke
Ne možete slati priloge uz poruke
Ne možete prepravljati svoje poruke

BB kod: uključeno
Smajliji: uključeno
[IMG] kod: uključeno
HTML kod: isključeno


Slične teme
tema temu započeo forum Odgovora Poslednja poruka
Direct3D 9 Engine Geomaster Programiranje 21 24.10.2008 17:00
Koji mi engine preporucujete??? PeTkO Pravljenje igara 8 26.7.2007 13:45
2d game engine Damjan Pravljenje igara 48 22.6.2007 11:35
N2D Engine EclipsE Pravljenje igara 4 22.8.2006 23:34


Sva vremena su po Griniču +2 h. Sada je 0:32.


Powered by vBulletin® verzija 3.8.7
Copyright ©2000–2024, vBulletin Solutions, Inc.
Hosted by Beograd.com