Kezdőoldal » Számítástechnika » Programozás » Hogyan lehet OpenGL-ben...

Webmester-ter kérdése:

Hogyan lehet OpenGL-ben (VC++) egy 3d-s páján meghatározni, hogy ne menjen túl a falon, megütközzön vagy egy adott távolságig tudjon közelíteni hozzá (az utóbbi volna a legjobb)?

Figyelt kérdés

arpad_fejedelem@yahoo.com

email címre lehet választ írni, vagy persze ide is



2012. júl. 3. 20:49
 1/7 iostream ***** válasza:
Na, ENNEK semmi köze az OpenGL-hez. Az a grafika, neked pedig valamiféle pálya megjelenítés kell. Amúgy keress arra, hogy vertex és pont távolsága (persze angolul), na ha ezt kiszámolod, és valamelyik vertexednél kisebb, mint a megengedett, akkor visszapakolod az ojjektumot a megfelelő távra.
2012. júl. 3. 23:22
Hasznos számodra ez a válasz?
 2/7 Srapnel ***** válasza:

Mivel a fal a 3d világod többi részéhez hasonlóan sík lapokból áll (háromszögekből), ezért a feladat nem más mint egy tetszőleges (térbeli) háromszögre és pontra megmondani a pontnak a háromszög síkjától való távolságát, valamint azt, hogy a pontból a síkra húzott merőleges a háromszögön belül van-e.


Tessék: [link]

2012. júl. 4. 11:25
Hasznos számodra ez a válasz?
 3/7 A kérdező kommentje:
és hogyan tudom meghatározni hogy hol is van most a kamera, mert én kicsit játszottam a vertexxekkel és OpenGL-ben van meg minden, ott csináltam meg a forgatást, közelítés távolítás, egérrel való kamera irányítás, mint a counter, de a falon átmegy gond nélkül, ezt kellene megoldjam
2012. júl. 5. 15:28
 4/7 Srapnel ***** válasza:

A kamerának semmi köze ahhoz, hogy a falnak való ütközést detektáld (mehetsz akár "hátrafelé" is, amikor a falat nem látod, de nekimész).


Nem tudom egyébként, hogy mi az, ami nem megy ebben.


Bármikor, amikor a játékost mozgatod (akinek a fején van a kamera), akkor a játékos koordinátáiból és a kívánt elmozdulásból megvan az irányvektor, ami felé haladni akarsz. Az előbbi két adatból adódó egyenes metszéspontját kell keresni az összes szóba jöhető háromszöggel (már amiket mozdíthatatlannak kívánsz). Az összes "szóba jöhető" itt azt jelenti, hogy érdemes előszűrni a háromszögeket. Pl. azokat fölösleges nézni, amelyek háttal vannak (ld. normálvektoruk), meg azokat is, amik a kívánt mozgással ellentétes irányban vannak. Olyat is szoktak csinálni, hogy a tájképet felbontják objektumokra, azoknak van egy befoglaló téglalapjuk, vagy gömbjük, így a bennük lévő háromszögekre csak akkor kell számolni, ha a befoglalót metszi a mozgás vektora.


Na, mindegy. Hosszú ezt így elmagyarázni.

2012. júl. 5. 15:35
Hasznos számodra ez a válasz?
 5/7 A kérdező kommentje:
ez nagyon alap, még 17 éves vagyok, minden tapasztalat és tanítás nélkül, csak a net áll rendelkezésemre, és csak a kamerát mozgatom, így muszáj tudnom annak helyzetét
2012. júl. 5. 15:53
 6/7 Srapnel ***** válasza:
Erős koordinátageometria és lineáris algebra nélkül nehéz lesz...
2012. júl. 5. 16:57
Hasznos számodra ez a válasz?
 7/7 A kérdező kommentje:
a matematika részét tudom, azt már megtanultam, tanították a suliban, de a kamera helyzetét nem tudom meghatározni
2012. júl. 6. 07:47

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!