Zanir » Blog Archive » Program 27 – ASE Loader

Program 27 – ASE Loader

12.09.2003

027_ASE_loader_0Súbory ase vytvara 3ds max ako ASCII scene export. Je to textový formát. Všeobecne majú textové formáty oproti binárnym tú výhodu, že ich dáta sú uložené textovým popisným spôsobom a preto nie je problém importovať potrebné časti so súboru. Textové súbory sú zase väčšie a pomalšie sa načítavajú. Načítanie ase súboru som urobil, preto lebo 3ds max exportuje veľa rôznych dát, 027_ASE_loader_1pričom načítavať ich s 3ds súboru je obtiažne, lebo poriadny popis neexistuje. Ďalšia nevýhoda 3ds je, že neobsahuje všetky informácie ( napr. chybajú normálové vektory).
3ds max obsahuje modul pre výpočet globálneho modelu osvetlenia – radiosity. To umožňuje docieliť veľmi realistické osvetlenie modelov. Jeho nevýhodou je, že je statické t.j. nie je možné hýbať so svetlom alebo s osvetľovanými predmetmi v realnom čase. 3ds max umožňuje vyrenderovať osvetlenie modelu do textúry ( vytvárať lightmap-i). Pre lightmap-i sa vygenerujú nové textúrové koordinácie. Vynásobením lightmap-i a základnej textúry docielime reálne osvetlenie modelu.
Ďalej v programe je použitá detekcia kolízie guli s modelom, pričom je lepšia ako v programe 21. Stará kolízia pracovala na princípe, že ak sa guľa nachádzala v polygóne tak sa presunula tak aby bola mimo polygónu bez ohľadu na pohyb. Ale ak guľa bola naraz v kolizii z viacerými polygónmi tak presunutie gule záviselo od poradia ich spracovania. To spôsobovalo zasekávanie sa okolo rohov a divné odrážanie na schodách. Občas sa “podarilo” prejsť aj cez schody. Nová kolízia sa počíta podľa smeru pohybu, zohľadňuje všetky polygóny, ktoré kolidujú s guľov pričom spracuváva ich v poradí ako do nich guľa vráža. Ak guľa narazí do polygónu potom sa po ňom šmýka až pokiaľ sa neskončí súčasný krok, alebo pokiaľ nenastane ďalšia kolízia.
V programe je aj gravitácia a skoky. Ak je gravitácia tak, okrem kolízie kamery s okolím testujem aj kolíziu so zemou. Ak sme na zemi môžeme vyskočiť. Ak nie sme na zemi tak účinkom gravitácie padáme dole.

zdrojové texty a program – 600kB bez jpeglibm.lib
model s 3ds max – 95kB

Pridať komentár