HTML

gondolataim elsősorban játékfejlesztésről

Elsősorban játékfejlesztés magyarul: az enginem fejlesztése során felmerülő problémák, ötletek, tévutak stb dokumentálása, amely számomra és talán mások számára is hasznos lehet később Másodsorban gondolatok szavakban...

Kapcsolat:
aalberik 'at' gmail 'dot' com

Haletető

Galéria

Címkék

Összes

Linkblog

Naptár

november 2024
Hét Ked Sze Csü Pén Szo Vas
<<  < Archív
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30

lövés

2009.04.19. 15:44 :: syam

Mielőtt elkalandozna bárki fantáziája a címmel kapcsolatban itt egy játék engine-ben szerintem használható lehetséges technikákat szedem össze.

A felállás viszonylag egyszerű hiszen alapvetően két szempont szerint lehet osztályozni a lövedékeket: méret és sebesség alapján. Nézzük sorban a lehetséges kombinációkat:

  1. A legkönnyebb eset a kis méret és nagy sebesség. Gyakorlatban ez azt jelenti legtöbbször, hogy a lövedék annyira kicsi és nagy sebességgel mozog, hogy nem látjuk -csak az elsülés pillanatát vesszük észre- és lehetetlen kitérni előle -az elsülés pillanatában már be is csapódik. Tehát renderelni a lövedéket nem kell az ütközéshez pedig elég raycast (vagy sweep) vizsgálat.
  2. Második a sorban a nagy méret és (relative) alacsony sebesség. Ilyenkor azt feltételezzük, hogy egy frame alatti elmozdulás kisebb, mint a méret legkisebb dimenziója -vagyis elég nagy ahhoz, hogy mindennel érintkezni fog az útja során és nem ugrik át semmit. Rendelni ilyenkor a lövedéket szükséges. Ütközéshez a lövedék (konvex) befoglalóját érdemes használni esetleg egy mozgó, térbeli szakaszt mérettől és alaktól függően.
  3. A legbonyolultabb eset a (relative) nagy méret és nagy sebesség. Előző esetben a szimuláció diszkrét időközönkénti kiértékelése lassú mozgásnál gyakorlatilag folytonos mozgáspályát eredményezett itt viszont már akkora a sebesség, hogy a pálya térbeli pontokká esik szét vagyis a közbülső pontokat látszólag nem érinti a test. Ilyen esetben van szükség folytonos ütközésvizsgálatra (continuous collision detection, CCD). Renderelnünk itt is a lövedék modelljét szükséges.
  4. Gyanítom, hogy kis méretű, kis sebességű lövedékek nem léteznek. Speciális esetekben, mint pl bullet time a 2. eset jöhet szóba.

Megjegyzések:

1. esetben a kis méret legtöbbször az elhanyagolhatóan kis méretet jelenti ill. valamilyen nyalábot pl. lézer.

3. esetben pedig a méret már látható méretet jelenti, amely észrevehető sebességgel mozog. Lehetséges, hogy a CCD leváltható abban az esetben ha rendkívül kicsi mértékben léptetjük az időt. Valószínűleg a mai enginek már leginkább ezt, a 3. esetet preferelják.

 

Szólj hozzá!

A bejegyzés trackback címe:

https://sakura7.blog.hu/api/trackback/id/tr731074362

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása