.mdx
Fișier MDX | |
---|---|
Extensie | .mdx |
Dezvoltat de | Blizzard Entertainment |
Tip | Grafică 3D |
.MDX este o extensie de fișier utilizată pentru a stoca modele grafice 3D. A fost proiectat și utilizat de Blizzard Entertainment în jocurile sale, dar acest tip de document este utilizat în principal în Warcraft 3 și în expansiunea sa The Frozen Throne .
Există două versiuni ale fișierelor model 3D: .MDX și .MDL . MDX este în format binar. Este mai dificil de editat, dar ocupă și mai puțin spațiu pe disc . MDL este în format text și poate fi editat direct folosind un editor de text simplu. Cu toate acestea, acest format este mult mai greu. Există multe programe software pentru a converti un fișier de la un tip la altul.
Software de conversie
Această listă include toate convertoarele pentru formatul MDX:
- MDLX Converter - Convertiți între MDL și MDX
Software de editare
Această listă include tot software-ul pentru a edita conținutul fișierelor MDX:
- Warcraft III Art Tools Arhivat la 11 octombrie 2008 la Internet Archive . - Necesită 3DSMax4 sau 3DSMax5
- Instrumente Oinkerwinkles , la wc3campaigns.net . Accesat la 2 iulie 2010 (arhivat din original la 13 mai 2008) .
Sintaxa codului
Toate exemplele de cod sunt în pseudocoding similare cu C / limbi C ++ . Pentru a simplifica sintaxa și lizibilitatea, codul a fost împărțit în sub-structuri . În acest scop, se folosește următoarea notație:
- X - Structura X care trebuie să fie prezentă în ordinea specificată
- {X} - Structura X care poate fi sau nu prezentă. De asemenea, poate fi plasat într-o ordine diferită.
Unele câmpuri speciale care au semnificații specifice:
- ChunkSize - Indică dimensiunea structurii (vezi structura )
- InclusiveSize - Indică dimensiunea structurii, inclusiv dimensiunea variabilei
- ExclusiveSize - Indică dimensiunea structurii NU include dimensiunea variabilei
Alte notații:
- #X - Un steag . Mai multe semnalizatoare pot fi combinate într-o singură variabilă la un moment dat.
Tipuri de date
Această listă listează toate tipurile de date utilizate de fișierele MDX
- UINT8 - Număr întreg de 8 biți nesemnat
- UINT16 - număr întreg nesemnat pe 16 biți
- UINT32 - Număr întreg pe 32 de biți nesemnat
- FLOAT - Un număr în virgulă mobilă pe 32 de biți (o singură precizie)
- FLOAT [N] - O secvență de N numere în virgulă mobilă pe 32 de biți care dă naștere unui tablou
- STRING [N] - O secvență de N caractere pe 8 biți care formează un șir
Structura
Toate fișierele au o structură ierarhică în arbore. Toate structurile pot include altele, luând numele de sub-structură . Conținutul variază în funcție de document, dar partea inițială a antetului este întotdeauna similară cu următoarea:
struct Chunk { Etichetă UINT32; UINT32 ChunkSize; ... };
Fiecare structură de cod începe cu declararea a două numere întregi nesemnate pe 32 de biți. Prima este o etichetă pentru a descrie tipul acesteia. Este aproape întotdeauna folosit ca o serie de 8 cifre care dă naștere unui ID. Al doilea număr indică dimensiunea structurii în sine. Această dimensiune NU include comanda în sine, ci doar codul ulterior. Aceste date sunt utile pentru determinarea numărului de structuri deschise din cadrul acestuia.
ID-ul unor structuri se poate referi la alte obiecte. Acestea sunt ID-uri (cu prima cifră 0) care se bazează pe indici de referință pentru fiecare obiect în ordinea în care apar în fișier. Valoarea 0xFFFFFFFF (-1 în format zecimal semnat) reprezintă atât absența, cât și prezența multor ID-uri. În acest din urmă caz, referința trebuie făcută în alt mod, de obicei dacă se creează unul nou dintr-un alt obiect.