.[ ČeskéHry.cz ].
Import modelu do hry

 
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
TeaTime



Založen: 17. 06. 2011
Příspěvky: 264

PříspěvekZaslal: 15. srpen 2013, 16:50:36    Předmět: Import modelu do hry Odpovědět s citátem

Mám nakreslený model v Blenderu a chci ho načíst ve hře pomocí knihovny Assimp. Potřeboval bych poradit, jaký formát souboru mám použít pro ukládání modelů. Potřebuji načíst vertexy, meshe, materiály, kostru a kosterní animace. Ideální by bylo, kdyby se povedlo uložit více různých animací pro jeden model.

Po nahlédnutí do dokumentace assimpu a otevření Blenderu jsem získal dojem, že s množstvím formátů souborů které tyto programy podporují to bude hračka.

Problém je v tom, že assimp nikdy nenačte animace. Nejblíže se mi povedlo dostat s ogre formátem *.mesh.xml, který sice skutečně obsahuje data pro kostru a animaci, ale assimp je ani přes ujišťování dokumentace, že to načíst umí, nenačte.

Jinak také nemohu potvrdit, že mám v Blenderu včechno správně kolem animací (i když asi mám). Vertexy přidělané ke kostem jsou, v pose modu se vše hezky hýbe. Nicméně zkoušel jsem definovat animaci v action editoru i přímo na timeline. Když pak přejíždím po timeline, tak se to animuje. Ve výpisu stromu scény je pod objektem modelu i položka Animation. Takže to se mi zdá, že to je dobře, ale tak s blenderem zas tak zkušenosti nemám.

Díky za rady, případně ocením info, jak to řešíte ve svých projektech.
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: 15. srpen 2013, 16:58:23    Předmět: Odpovědět s citátem

Mně fungovala dobře Collada, i když tam tuším byl nějaký problémek s cestami k texturám, tuším je to chtělo v Blenderu nějak upravit.
_________________
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
TeaTime



Založen: 17. 06. 2011
Příspěvky: 264

PříspěvekZaslal: 15. srpen 2013, 17:23:06    Předmět: Odpovědět s citátem

Colladu jsem ani nezkoušel, vypadá na první pohled dobře, ale blender už jí nepodporuje kvůli potížím s export pluginem a údajnou neudržitelnou roztříštěností specifikace Collady. Mohl bych tam asi dát ten starý exporter, ale obávám se, abych neměl pak komplikace s tou roztříštěností specifikace.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
perry



Založen: 28. 07. 2009
Příspěvky: 879

PříspěvekZaslal: 15. srpen 2013, 17:57:25    Předmět: Odpovědět s citátem

Jako Collada je dobrá.... ale neskutečně komplexní, takže je X verzí a žádná pořádně v těch exportech nejde... resp. export něco vyhodí, ale import to pak nezvládne.
_________________
Perry.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Vilem Otte



Založen: 18. 09. 2007
Příspěvky: 462
Bydliště: Znojmo - Sedlesovice, Kravi Hora

PříspěvekZaslal: 15. srpen 2013, 19:23:14    Předmět: Odpovědět s citátem

Za sebe můžu říct, že používám textový obj pro statické modely (anebo neanimované modely). Skeletální modely používají formát md5. A oba jsou poté narvány do binárních, mnohem lépe použitelnějších formátů, které už nesou všechny informace které potřebuji (např. tangent-space vektory, atd. atd. atd.).

Kosterní animace poté načítám z md5 (mesh + anim soubory), převedu do lepšího formátu a uložím do něj.

Na export md5 jsou pluginy a ten formát je textový a velice jednoduchý. Lze jej velmi snadno převést do matrix-based formátu (je quaternion-based a geometrie je definována pomocí "weights").

Assimp nepoužívám (a nikdy jsem jej nepoužil), mám napsané vlastní knihovny, které se starají o loading (s tím, že mám veřejně známý interface pro engine a není problém napsat další dynamickou knihovnu pro další formát).

Collada je XMLshit (má láska k XML je až tak velká, že vše co je na něm postaveno vyloženě nenávidím), u textur, geometrie a dalších dat (objemnějších než "10 řádků") je XML jednoduše no-way.
_________________
Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovi WWW stránky
perry



Založen: 28. 07. 2009
Příspěvky: 879

PříspěvekZaslal: 15. srpen 2013, 21:13:23    Předmět: Odpovědět s citátem

citace:
má láska k XML je až tak velká, že vše co je na něm postaveno vyloženě nenávidím


Tak třeba mkv kontejner má interně taky xml strukturu (pravda, binární xml). Osobně bych ho rozhodně nezatracoval. Collada myslím taky podporuje binární xml, nebo ne ?
_________________
Perry.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Aroidzap



Založen: 14. 11. 2011
Příspěvky: 68

PříspěvekZaslal: 15. srpen 2013, 21:34:27    Předmět: Odpovědět s citátem

Podle mě je lepší udělat si převodník na vlastní typ modelu, a tam si uložíš co potřebuješ Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
TeaTime



Založen: 17. 06. 2011
Příspěvky: 264

PříspěvekZaslal: 15. srpen 2013, 21:49:53    Předmět: Odpovědět s citátem

Aroidzap napsal:
Podle mě je lepší udělat si převodník na vlastní typ modelu, a tam si uložíš co potřebuješ Smile


Já tedy neví, jímá mě překvapení a i jistá skepse při pomyšlení na to, že kvůli funkčnosti, která byla implementována už asi milionkrát se musím naučit scriptovat v blenderu a psát si vlastní parser.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
frca



Založen: 28. 07. 2007
Příspěvky: 1561

PříspěvekZaslal: 15. srpen 2013, 21:56:35    Předmět: Odpovědět s citátem

Není to zas nějak extra těžké, navíc se můžeš inspirovat u stávajících pluginů.
_________________
www.FRANTICWARE.com
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Aroidzap



Založen: 14. 11. 2011
Příspěvky: 68

PříspěvekZaslal: 15. srpen 2013, 22:15:15    Předmět: Odpovědět s citátem

Já myslel vyexportovat v třeba v Colladě a pak to převést (vlastní aplikací, ne pluginem)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
TeaTime



Založen: 17. 06. 2011
Příspěvky: 264

PříspěvekZaslal: 15. srpen 2013, 23:15:07    Předmět: Odpovědět s citátem

Aroidzap napsal:
Já myslel vyexportovat v třeba v Colladě a pak to převést (vlastní aplikací, ne pluginem)


No v Colladě se mi nechce - uváděl jsem to výše.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
]semo[



Založen: 29. 07. 2007
Příspěvky: 1526
Bydliště: Telč

PříspěvekZaslal: 16. srpen 2013, 09:46:48    Předmět: Odpovědět s citátem

A můžeš použít FBX? Tam se dá uložit všechno možný a na rozdíl od collady to funguje. Neznám framework, co používáš, ale já do svýho programu přidal Autodesk FBX SDK a načítám FBXka. S tim bych mohl poradit.

Jinak, co přesně chceš, aby ten formát uměl?

O colladě: Vím o čem mluvím, psal sem vlastní importer na colladu a musím říct, že toho dovoluje tak moc, že co exporter, to jiná collada. Nejde jen o verze, ale i o vnitřní strukturu, materiály, atd. Liší se to i v rámci verzí jednotlivých 3D SW. Je to hnusnej maglajz.
Na druhou stranu, když budeš importovat jen z jednoho programu, napíšeš importer poměrně rychle.
_________________
Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
TeaTime



Založen: 17. 06. 2011
Příspěvky: 264

PříspěvekZaslal: 16. srpen 2013, 10:21:42    Předmět: Odpovědět s citátem

]semo[ napsal:

Jinak, co přesně chceš, aby ten formát uměl?


Meshe, vertexy, UV, materiál (stačí filename textury), kostru (strom kostí), vazbu mezi kostmi a vertexy, vícero keyframe animací kostry.

No a je samozřejmě možné, že zjistím, že tam potřebuji ještě nějaké drobnosti, ale z těch hlavních featur by to mělo být všechno.

Preferuji assimp, protože už jsem s ním dělal a vím, jak funguje. Zvolit něco jiného by samozřejmě neměl být problém, ale moc se do toho neženu. Na FBX mě navíc trochu znepokojují všechna ta ?.

Teď zdá se nějak funguje formát .x (DirectX). Sice MS technologie moc nemusím, takže ještě hledám něco vhodnějšího, ale ozkouším, jak to bude fungovat.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
]semo[



Založen: 29. 07. 2007
Příspěvky: 1526
Bydliště: Telč

PříspěvekZaslal: 16. srpen 2013, 10:38:39    Předmět: Odpovědět s citátem

TeaTime napsal:
Na FBX mě navíc trochu znepokojují všechna ta ?.


Jaký otazníky máš namysli? Pokud ten otazník neni špatně zobrazený znak :)).


Jinak koukám, že z Blendru se dá exportovat ASE, to animace podporuje. Aspoň v MAXu. Mám dojem, že svýho času to lidi na hry docela používali a tvoje požadavky myslím splňuje. Jinak asi ta MD5ka, ale o ní moc nevím. Kdysi sem viděl formát MD2, už to se dá použít.
_________________
Kdo jede na tygru, nesmí sesednout.
---
http://www.inventurakrajiny.cz/sipka/
Aquadelic GT, Mafia II, simulátory
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
TeaTime



Založen: 17. 06. 2011
Příspěvky: 264

PříspěvekZaslal: 16. srpen 2013, 10:52:03    Předmět: Odpovědět s citátem

]semo[ napsal:
TeaTime napsal:
Na FBX mě navíc trochu znepokojují všechna ta ?.

Jaký otazníky máš namysli? Pokud ten otazník neni špatně zobrazený znak Smile).
.


Jo, je to špatně zobrazený znak, měl jsem na mysli R v kroužku Smile. Prostě radši volím otevřenější technologie.

MD5 se mi líbil, chtěl jsem ho vzít, ale nějak se mi nedařil dobrý export z Blenderu (je na to nějaký plugin, co hází exceptiony).

Na ten ASE kouknu, to jsem ještě nezkoušel, díky.
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