Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Sudar dva mesh-a

[es] :: 3D programiranje :: Sudar dva mesh-a

Strane: 1 2

[ Pregleda: 6090 | Odgovora: 28 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Acid
Nikola Milanovic
Cacak

Član broj: 9585
Poruke: 144
*.teleportgroup.net



Profil

icon Sudar dva mesh-a07.12.2003. u 17:18 - pre 248 meseci
Kako da utvrdim da li su se dva mesh-a sudarila?
 
Odgovor na temu

Reljam
Relja Markovic
San Francisco

Član broj: 531
Poruke: 1793
*.attbi.cable.earthlink.net



+18 Profil

icon Re: Sudar dva mesh-a07.12.2003. u 19:57 - pre 248 meseci
To je jedno relativno komplikovano pitanje - postoje citave knjige koje se bave tom problematikom. Pogledaj na guglu malo o "bounding box"ovima, to je jedan od nacina da utvrdis da li je doslo do dodira izmedju dva mesha. D3DXComputeBoundingBox je D3DX funkcija koja sluzi za racunjanje bounding boxova, ali ipak treba da pogledas prvo malo teorije.

Bilo bi dobro i da nabavis neku knjigu o 3D programiranju - jer lako je poceti, nacrtati nesto sto se vrti na ekranu, ali posle toga se stvari brzo komplikuju.
 
Odgovor na temu

yooyo

Član broj: 4891
Poruke: 1101
195.250.117.*



Profil

icon Re: Sudar dva mesh-a09.12.2003. u 22:50 - pre 248 meseci
Reljam je u pravu... Zavisi od toga koliko zelis "siguran" sudar. Mozes da koristis
od bounding boxova, sfera, uproscenih mesheva ili bas svih vertexa/poligona.

Sto je proracun precizniji, trosi se vise CPU vremena. Za izuzetno precizne sudare
prave se specijalne strukture podataka za svaki mesh i metode kojima se daje odredjeno
vreme za proracun (u milisekundama), pa sto vise vremena potrose dobijes precizniji rezultat.

No da ne sirim previse... ako je za igru... onda uzmi neku jednostavnu metodu... (boxovi ili sfere)

yooyo
 
Odgovor na temu

Acid
Nikola Milanovic
Cacak

Član broj: 9585
Poruke: 144
*.teleportgroup.net



Profil

icon Re: Sudar dva mesh-a10.12.2003. u 21:54 - pre 247 meseci
Naravno da mi treba najprostiji vid sudara, ali kako?
 
Odgovor na temu

yooyo

Član broj: 4891
Poruke: 1101
195.250.117.*



Profil

icon Re: Sudar dva mesh-a10.12.2003. u 23:03 - pre 247 meseci
Hmmm.. Napravi boundary box oko svakog objekta i chekiraj da li su se 2 boxa negde presekla (dodirnula) i to je to... Ako su boxovi poravnati sa osama (axis aligned) sistema,
onda se presek svodi na nekoliko poredjenja.

Ako imas mnogo objekata, onda raspodeli objekte u npr. octree, pa ces
na taj nacin eliminisati veliki broj nepotrebnih poredjenja.

Ako koristis sfere onda se sudar detektuje ako je rastojanje izmedju 2 sfere
manje od zbira njihovih poluprecnika.

yooyo
 
Odgovor na temu

Reljam
Relja Markovic
San Francisco

Član broj: 531
Poruke: 1793
*.microsoft.com



+18 Profil

icon Re: Sudar dva mesh-a10.12.2003. u 23:20 - pre 247 meseci
Tacno, i samo jedna mala ispravka / optimizacija: kvadrat razdaljine treba da bude manji od kvadrata zbira poluprecnika. :)
 
Odgovor na temu

Gojko Vujovic
Amsterdam, NL

Administrator
Član broj: 1
Poruke: 13651



+165 Profil

icon Re: Sudar dva mesh-a11.12.2003. u 01:48 - pre 247 meseci
Zar ne govorite uvek da ne treba ništa optimizovati ("to je gubljenje vremena")?

Sve će to hardver pozlatiti.
 
Odgovor na temu

yooyo

Član broj: 4891
Poruke: 1101
195.250.117.*



Profil

icon Re: Sudar dva mesh-a11.12.2003. u 09:59 - pre 247 meseci
Citat:
Gojko Vujovic:
Zar ne govorite uvek da ne treba ništa optimizovati ("to je gubljenje vremena")?

Sve će to hardver pozlatiti.


:)))

Ko je to rekao!?

yooyo
 
Odgovor na temu

Acid
Nikola Milanovic
Cacak

Član broj: 9585
Poruke: 144
*.teleportgroup.net



Profil

icon Re: Sudar dva mesh-a11.12.2003. u 11:15 - pre 247 meseci
Pogledao sam u Help-u kako napraviti Bounding Sphere i sve mi je jasno osim sledeceg:
Code:

objectRadius = Geometry.ComputeBoundingSphere(vertexData,
                                              pMesh.NumberVertices,
                                              pMesh.VertexFormat,
                                              out objectCenter);


Sta je objectCenter kada nije predhodno definisano; sta znaci OUT i kako to prevesti u VB?
Hvala
 
Odgovor na temu

Reljam
Relja Markovic
San Francisco

Član broj: 531
Poruke: 1793
*.microsoft.com



+18 Profil

icon Re: Sudar dva mesh-a11.12.2003. u 19:36 - pre 247 meseci
Citat:
Gojko Vujovic:
Zar ne govorite uvek da ne treba ništa optimizovati ("to je gubljenje vremena")? Sve će to hardver pozlatiti.
Pa, postoji razlika izmedju optimizacije i koriscenja provereno losijih algoritama (bubble sort?). Ovo ipak spada u drugu kategoriju. A inace jedna od odlika iskusnijih programera je da znaju sta treba, a sta ne treba optimizovati. Ako vas zanima vise o ovoj temi, kao i o kriterijumu sta treba optimizovati, mozemo slobodno da otvorimo temu u "Art of Programming".
 
Odgovor na temu

Acid
Nikola Milanovic
Cacak

Član broj: 9585
Poruke: 144
*.teleportgroup.net



Profil

icon Re: Sudar dva mesh-a12.12.2003. u 18:27 - pre 247 meseci
ima li koga?
 
Odgovor na temu

Reljam
Relja Markovic
San Francisco

Član broj: 531
Poruke: 1793
*.microsoft.com



+18 Profil

icon Re: Sudar dva mesh-a12.12.2003. u 18:47 - pre 247 meseci
Ima, ali ovo je prvenstveno forum za grafiku, ne za VB. ObjectCenter je, jelte, centar objekta. Dakle tacka koja predstavlja centar objekta. A posto je out parametar, to znaci da ce funkcija tebi to da vrati, ne treba ti njoj da prosledjujes vrednosti, vec samo da joj das promenljivu u koju ce to ona da zapise. Pogledaj help za out parametere ili neku knjigu za Visual Basic.
 
Odgovor na temu

Acid
Nikola Milanovic
Cacak

Član broj: 9585
Poruke: 144
*.teleportgroup.net



Profil

icon Re: Sudar dva mesh-a12.12.2003. u 21:03 - pre 247 meseci
Hvala na odgovoru
Znam da forum nije za VB ali je pitanje prvenstveno vezano za grafiku i grafiku u VB-u.
Pozdrav.
 
Odgovor na temu

Acid
Nikola Milanovic
Cacak

Član broj: 9585
Poruke: 144
*.teleportgroup.net



Profil

icon Re: Sudar dva mesh-a13.12.2003. u 16:35 - pre 247 meseci
Uspeo sam da napravim boundarySphere, ali: na objektu koji ima koordinate 0,0,0 vrednosti za ObjectCenter su 0.6639903, 11.74995, 44.98951, a precnik 204.6698. Kada pomeram objekat vrednosti za centar sfere se ne menjaju! Sta nije u redu?
Hvala unapred.
 
Odgovor na temu

Reljam
Relja Markovic
San Francisco

Član broj: 531
Poruke: 1793
*.attbi.cable.earthlink.net



+18 Profil

icon Re: Sudar dva mesh-a13.12.2003. u 20:10 - pre 247 meseci
Bounding sphere se nalazi u koordinatnom sistemu tvog objekta, znaci ne pomera se kada pomeris objekat. Da bi je imao u world coordinates, treba da pomnozis poziciju bounding sphera sa istom transformacijom (world transform) sa kojom mnozis objekat da bi ga pomerio.
 
Odgovor na temu

Acid
Nikola Milanovic
Cacak

Član broj: 9585
Poruke: 144
*.teleportgroup.net



Profil

icon Re: Sudar dva mesh-a13.12.2003. u 22:12 - pre 247 meseci
Hvala.
A BoundaryBox?
dva out paramaetra min,max kao vector3.
Sta predstavljaju min i max i koju vrednost vraca funkicja (kao sto ova sa sferom vraca precnik sfere). HVALA.
 
Odgovor na temu

Reljam
Relja Markovic
San Francisco

Član broj: 531
Poruke: 1793
*.attbi.cable.earthlink.net



+18 Profil

icon Re: Sudar dva mesh-a13.12.2003. u 22:55 - pre 247 meseci
To su dva vektora koji odredjuju bounding box. Posto je poravnat sa koordinatnim osama, to je sve sto ti treba da bi definisao 'kocku' (nije bas kocka, ali bas ni 'kutija' ne zvuci mnogo bolje).
 
Odgovor na temu

Acid
Nikola Milanovic
Cacak

Član broj: 9585
Poruke: 144
*.yubc.net.



Profil

icon Re: Sudar dva mesh-a14.12.2003. u 22:01 - pre 247 meseci
Da li je moguce prikazati boundaryBox na ekranu?
 
Odgovor na temu

Reljam
Relja Markovic
San Francisco

Član broj: 531
Poruke: 1793
*.attbi.cable.earthlink.net



+18 Profil

icon Re: Sudar dva mesh-a15.12.2003. u 08:13 - pre 247 meseci
Jeste, ali moras sam da ga iscrtas. Najlakse je tako sto uzmes model kocke koja ima velicine strane 1, namestis joj neku poluprovidnu teksturu, i onda je namestis tamo gde treba.
 
Odgovor na temu

Acid
Nikola Milanovic
Cacak

Član broj: 9585
Poruke: 144
*.teleportgroup.net



Profil

icon Re: Sudar dva mesh-a15.12.2003. u 10:38 - pre 247 meseci
1. Kako da u max-u nacrtam kocku a da njena ivica bude 1?
2. Kocka sa ivicom 1 treba da bude poravnata sa osama tako da se koordinatni pocetak nalazi u centru kocke ili u jednom uglu?
3. Kakva je veza izmedju min i max vektora i dimenzija kocke?

Hvala.
 
Odgovor na temu

[es] :: 3D programiranje :: Sudar dva mesh-a

Strane: 1 2

[ Pregleda: 6090 | Odgovora: 28 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.