.mdx

Da Wikipedia, l'enciclopedia libera.
File MDX
Estensione .mdx
Sviluppato da Blizzard Entertainment
Tipo Grafica 3D

.MDX è un tipo di file utilizzato per memorizzare modelli grafici in 3D. È stato progettato e viene adoperato dalla Blizzard Entertainment nei suoi giochi, ma questo tipo di documento è utilizzato principalmente in Warcraft 3 e la sua espansione The Frozen Throne.

Esistono due versioni di file per modelli 3D: .MDX e .MDL. MDX è in formato binario. È più difficile da modificare, ma occupa anche meno spazio su disco. MDL è in formato testo e può essere modificato direttamente utilizzando un semplice text editor. Tuttavia questo formato risulta molto più pesante. Esistono molti software per convertire un file da un tipo all'altro.

Software per la conversione[modifica | modifica wikitesto]

Questa lista comprende tutti i convertitori per il formato MDX:

  • MDLX Converter - Converte tra MDL e MDX

Software per la modifica[modifica | modifica wikitesto]

Questa lista comprende tutti i software per modificare il contenuto dei file MDX:

Sintassi del codice[modifica | modifica wikitesto]

Tutti gli esempi di codice sono in una pseudocodifica simile ai linguaggi C/C++. Per semplificare la sintassi e la leggibilità, il codice è stato diviso in sub strutture. A tale scopo, viene utilizzata la notazione seguente:

  • X - Struttura X che deve essere presente nell'ordine specificato
  • {X} - Struttura X che può o non può essere presente. Può anche essere posizionata in ordine diverso.

Alcuni campi particolari che hanno significati specifici:

  • ChunkSize - Indica la dimensione della struttura (vedi struttura)
  • InclusiveSize - Indica la dimensione della struttura includendo anche la dimensione della variabile
  • ExclusiveSize - Indica la dimensione della struttura NON includendo la dimensione della variabile

Altre notazioni:

  • #X - Un flag. Possono essere combinate più flag alla volta in una singola variabile.

Tipi di dati[modifica | modifica wikitesto]

In questa lista sono elencati tutti i tipi di dati utilizzati dai file MDX

  • UINT8 - Intero a 8-bit senza segno
  • UINT16 - Intero a 16-bit senza segno
  • UINT32 - Intero a 32-bit senza segno
  • FLOAT - Un numero con virgola mobile a 32-bit (precisione singola)
  • FLOAT[N] - Una sequenza di N numeri con virgola mobile a 32-bit che da origine ad un array
  • STRING[N] - Una sequenza di N caratteri a 8-bit formando una stringa

Struttura[modifica | modifica wikitesto]

Tutti i file hanno una struttura gerarchica ad albero. Tutte le strutture possono includere al loro interno delle altre, prendendo il nome di sub struttura. Il contenuto varia a seconda del documento, ma la parte iniziale d'intestazione è sempre simile alla seguente:

struct Chunk
{
  UINT32 Tag;
  UINT32 ChunkSize;

  ...
};

Ogni struttura del codice inizia con la dichiarazione di due interi senza segno a 32-bit. Il primo è un tag per descriverne il tipo. È quasi sempre utilizzato come serie di 8 cifre che danno origine ad un ID. Il secondo numero indica la dimensione della struttura stessa. Questa dimensione NON include il comando stesso, ma solo il codice successivo. Questo dato è utile per determinare il numero di strutture aperte al suo interno.

L'ID di alcune strutture possono riferirsi ad altri oggetti. Si tratta di ID (con la prima cifra 0) che si basano su indici di riferimento per ogni oggetto seguendo l'ordine in cui appaiono nel file. Il valore 0xFFFFFFFF (-1 in formato decimale con segno) rappresenta sia l'assenza che la presenza di molti ID. In quest'ultimo caso, il riferimento deve essere fatto in qualche altro modo, di solito se ne crea uno nuovo da un altro oggetto.

Voci correlate[modifica | modifica wikitesto]