.[ ČeskéHry.cz ].
Elipsoidní kolize

 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
Játro.m



Založen: 01. 02. 2010
Příspěvky: 230

PříspěvekZaslal: 17. červen 2010, 19:42:31    Předmět: Elipsoidní kolize Odpovědět s citátem

Zdarec,

zápasím s kolizema elipsa vs triangl a pořeboval bych vědět,
1. Co jsem se dočetl musím mít radius elipsy, dejme tomu vec3(3,7,3);
2. Musím vydělit každej vertex tímto radiusem
3. Dál to podle kódu vypadá že s takle vydělenejma vertextama můžu zacházet jako s kolizí bsphere vs triangl?
4. Když chci získat reálnou pozici tak musím zase vyNÁSOBIT výstupní vektor pozice kamery radiusem?

Tendle postup by fungoval ale občas se ocitnu úplně někde jinde než bych měl.

Je to všechno? Moje angličtina není moc extra dobrá takže ty technický dokumentace pro mě louskat je trochu problem.

Dik za nějaký rady.
Játro


Naposledy upravil Játro.m dne 17. červen 2010, 21:38:55, celkově upraveno 1 krát
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
micky



Založen: 28. 02. 2008
Příspěvky: 348
Bydliště: Plzeň, Praha

PříspěvekZaslal: 17. červen 2010, 20:14:49    Předmět: Odpovědět s citátem

Tohle by mělo fungovat, jestli tomu dobře rozumím (elipsa nebo elipsoid?? - 2D/3D, ono v tom takový rozdíl není). Trochu populárně řečeno, zdeformuješ ten svůj "vesmír" tak, aby z elipsoidu vznikla koule. Tzn při elipsoidu 2,1,1 se zmáčne "vesmír" ve směru osy x na polovinu. Tedy z elipsoidu se stala koule, trojúhelník je pořád trojúhelník, akorát zdeformovaný.

...pokud je ten elipsoid nějak natočený, tak se to taky musí brát v potaz, ale taková situace tě asi nezajímá... Smile

Snad jsem ti pomohl, moje řešení bývají tak trochu na koleně dělaná.
_________________
https://www.bluepulsar.cz/
https://twitter.com/11thDream_Game/
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
if.then



Založen: 13. 04. 2008
Příspěvky: 579

PříspěvekZaslal: 17. červen 2010, 20:43:24    Předmět: Odpovědět s citátem

citace:
4. Když chci získat reálnou pozici tak musím zase vydělit výstupní vektor pozice kamery radiusem?

Spíš vynásobit, ne? Jinak před tím dělením a po násobení samozřejmě musíš převést vertexy do/z lokálního systému elipsoidu.
_________________
For guns and glory, go to www.ceske-hry.cz.
For work and worry, execute VC++.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Játro.m



Založen: 01. 02. 2010
Příspěvky: 230

PříspěvekZaslal: 17. červen 2010, 21:14:02    Předmět: Odpovědět s citátem

micky: Elipsoidu, asi mám někde problem s normálou u počítání slidu po zdi, dneska už to neřeším su vysoslej jak houba

ifthen, máš recht, jenom jsem se přepsal Wink u sebe to mám Wink snad na to sám příjdu, musí to bejt nějaká prkotina

jenom jsem se potreboval ujistit ze to delam správně
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna