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

december 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 31

Import, export, formátum és COLLADA

2011.06.07. 17:37 :: syam

A 3D enginek egyik központi kérdése saját modellek ill. jelenetek felhasználása. Az ehhez szükséges munkamenet általában úgy történik, hogy a felhasználni kívánt modellt elkészülése után egy exportálás következik amit végül egy importálás zár.
Ennek során az engine-nek rendelkeznie kell az általa támogatott formátum minél teljesebb körű támogatásával valamint a modellezéskor ill. exportáláskor figyelembe kell venni az engine importálójának igényeit.

Érezhető és tapasztalható is, hogy ezek igen kényes műveletek lehetnek és sok fejfájást okozhatnak mind a modell készítésekor és exportálásakor. Általában a nem animált modellek kevesebb fejfájást okoznak szemben az animált modellekkel.
Csak néhány a leggyakoribb problémákból:

  • a modellező és engine eltérő koordinátarendszere - melyik tengely jelenti a függőlegest
  • a méretarányok ritkán egyeznek meg a két alkalmazásban
  • csontvázas animációkor a méretaránybeli eltérést a csontváznál és az animációnál is figyelembe kell venni
  • a modellező által használt modell geometria / topológia leírás nem feltétlen illeszkedik az engine-hez
  • általában egy engine kevesebb és nem ugyanolyan material feature-t használ, mint egy modellező program
  • a material animációkhoz használt scriptek nehezen (vagy egyáltalán nem) alkalmazhatók egy engine-ben
  • külön formátum lehet szükséges statikus és animált modellekhez.

Kézenfekvő megoldásnak tűnik saját exporter készítése az engine-hez azonban ehhez szükséges a támogatni kívánt modellező programok SDK-inak ismerete és az exporterek karbantartása. Ezek elkészítése és tesztelése azonban rendkívül időigényes lehet - az adott program támogatni kívánt képességeinek függvényében.

Létezik egy formátum, amely eredetileg azért született, hogy a különböző modellező programok közötti információcserét megkönnyítsék ill. egységesítsék - innen ered a file formátum neve is: Digital Asset Exchange (magát a törekvést COLLADA-nak nevezték el) - azonban ez egyéb 3D alkalmazások számára is vonzóvá vált (hiszen
mindezen nehézségek egy csapásra kezelhetővé válnak egy "mindent leírni képes" formátum megszületésével).

Egy xml alapú leírónyelvről van szó, amely biztosít egy szabványos / közös nyelvkészletet, de ezen felül tetszőleges bővíthető saját, nem-standard elemekkel. Mivel rengeteg tulajdonság leírására képes, ezért felépítése meglehetősen szövevényes.
Ebből következik, hogy csak akkor érdemes a támogatása ha ezen tulajdonságokat valóban ki is tudja használni az engine.

Folyt. köv.

2 komment

Címkék: collada dae

A bejegyzés trackback címe:

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

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.

biotronicart 2012.12.29. 22:52:11

Húha... az van, hogy ez a cikk most egy kicsit több mint érdekel... létezhet egy profibb collada exporter az OPENCOLLADA-n kívül (ami egyébként egész aranyos)a 3dsMaxhez... az van, hogy threejs-ben próbálunk néhány cimborával összepattintani valamit és relatíve bazinagy fájlokat tolunk ki a MAX-ből... esetleg van tudomásod valamiféle cizelláló leírásról, hogy miként tudnánk mondjuk 12 Mb-nyi adatot lecsökkenteni 4 Mb-ra, vagy 100 Kb-ra? Őrülten hangozhat, de elég régóta kutatom a megoldást annak ellenére is, hogy még az életben nem programoztam, de ... vezess egy GURU elé és fejet hajtok előtte, ha segít tanulnom... mi több én is segítek!

syam 2012.12.30. 21:26:19

@biotronicart: a collada, mint ahogy a neve is mutatja inkább tartalom átvitelére készült, mintsem tárolásra.

Hátrányos tulajdonság a szöveges mivolta amiből viszont az is következik, hogy jól tömöríthető.
Ezenkívül a parse-olása is elég sok ideig tarthat ill. körülményes.
Valamint sok a végső felhasználáshoz felesleges adatot tartalmaza / tartalmazhat.

Összességében tehát azt javaslom, hogy a collada csak egy átmeneti formátum legyen a modellezési fázis és egy bináris, feldolgozott és használatra kész fázis között.

Nem ismerek az opencolladán kívül jobb exportálót azonban nyílt forrású és így szabadon módosítható.

Csak egy emberről tudom, hogy valóban guru, de ő sajnos nagyon elfoglalt. A net viszont tele van tutorialokkal és onnan érdemes megtanulni az alapokat.
süti beállítások módosítása