Формат файлов *.LOD

Редакция 1.01

Оглавление


Введение

Формат файла пока сравнительно молодой и может претерпевать некоторые изменения. Те параметры которые были изменены или добавлены в этой редакции по сравнению с предыдущей редакций, отмечены жёлтым цветом или красным словом New ! .

Структура файла

Файлы типа *.LOD состоят из сигнатуры и блоков.

Сигнатура

Каждый LOD-файл начинается сигнатурой "LODka3D1". Это означает, что это именно LOD-Файл, а не что-нибудь другое. Далее идут блоки ...

Блоки

Каждый блок состоит из заголовка и данных идущих за ним. Заголовок занимает 12 байт. В нём описан тип данных ( ID ), их длина ( Size ), и один дополнительный параметр данных названный Count, так как часто используется как счётчик.

При помощи Size удобно пропускать ненужные блоки. Считываем из файла/потока только заголовок, и если блок не нужен, то смещаемся по файлу/потоку на Size, таким образом оказываясь перед заголовком следующего за этим блока.

Заголовок блока

Заголовок имеет формат :

Параметр Размер ( байт ) Смещение ( байт ) Тип Описание
ID 4 0 Символы

Идентефикатор блока. Определяет тип данных идущих за заголовком. Например "LOD1" - означает что данные содержит LOD-файл, PHS1 - означает, что данные содержит описание физики. И т. д.

Size 4 4 Целое

Размер данных идущих за заголовком. Сам заголовок в эту величину не входит. Если надо получить размер данных с заголовком, то к этой величине надо прибавить 12 ( длина заголовка ).

Count 4 8 Целое

Дополнительный параметр данных. Часто используется как счётчки, поэтому и назван Count.

На Паскале описание заголовка выглядит так:

type
  TLODChunk = packed record
    ID    : array [0..3] of Char;
    Size  : Integer;
    Count : Integer;
  end;

Данные некоторых блоков ( LOD1, MAL1, MSL1, ANS1, LGS1 ) могут состоять исключительно из других блоков. Данные других блоков ( INF1, MAT1, MSH1, SK1, ANM1, PSH1, LIG1 ) - нет.

Сигнатура и блоки в древовидное представлении

Типы блоков

Предыдущие редакции

Вопросы, пожелания, обратная связь

Если вы найдёте какие-либо ошибки в формате или в этом описании, или что-то здесь объяснено не однозначно, или у вас есть пожелания как формат можно улучшить/дополнить - пишите .

Об орфографических ошибках просьба не сообщать.


© LODka3D 2006
Hosted by uCoz