среда, 14 октября 2009 г.

немного понял как хранятся модели:
сначало идет 584F424642494E (XOBFBIN) далее идет 20 и 4 байта (размер модели)

вторник, 13 октября 2009 г.

Взято из карты ROUTE66.EXP (Arizona)
* - отмечено то что еще может присутствовать в файле карты, но в данной карте этого нет

FORM ----------------------- заголовок карты
TERRTITL ------------------- текст (Название карты) надпись при загрузке
. -------------------------- всегда 00
TEXT ----------------------- текст (надпись когда карта уже загрузилась)
. -------------------------- всегда 00
XLSC ----------------------- картинка при загрузке
XLSC ----------------------- ?
XLSC ----------------------- ?
XLSC -----------------------
XLSC -----------------------
XLSC -----------------------
XLSC -----------------------
XLSC -----------------------
XLSC -----------------------
XLSC -----------------------
XLSC -----------------------
XLSC -----------------------
XLSC -----------------------
XLSC -----------------------
XLSC -----------------------
XLSC -----------------------
HEAD ----------------------- ?
XBGM ----------------------- картинка горизонта(SkyBox)  формат(*.TIM)
SUNA ----------------------- Солнце
COLS ----------------------- чтото типа атмосферы
XBMP ----------------------- текстура ланшафта формат(*.TIM)
XTIN -----------------------
ZONE ----------------------- ланшафт с тексурой и материалом (Heightmap)
ZONE ----------------------- ланшафт с тексурой и материалом (Heightmap)
ZONE ----------------------- ланшафт с тексурой и материалом (Heightmap)
ZONE ----------------------- ланшафт с тексурой и материалом (Heightmap)
ZONE ----------------------- ланшафт с тексурой и материалом (Heightmap)
ZONE ----------------------- ланшафт с тексурой и материалом (Heightmap)
ZMAP ----------------------- Массив здесь собирается полная карта (Heightmap)
FORM XOBFBIN ----------- Модели с текстурами
FORM XOBFBIN ----------- ? (чтото похожее на модели, возможно COLLISION)
AIMP ------------------------ ?
*XWAT --------------------- текстура воды формат(*.TIM) (используется только если на карте есть вода)
XRTP -----------------------
XRTP -----------------------
PLTX -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
JUNC -----------------------
. ----------------------------- всегда 00
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
RSEG -----------------------
BSP ------------------------ BSP
FORM OBJ HEAD -------------- расположение обектов, сарт поинтов, оружия и т.д

вторник, 6 октября 2009 г.

Как я и предпологал в 1 пикселе (00 00 00 00)
первый и второй байт - это heightmap
третий байт - это текстура
четвертый байт - это материал

Причем heightmap  содержит 2 байта и его минимальное значение = FFFF а максимальное = 0000 (чем больше число тем ниже пиксель)

понедельник, 5 октября 2009 г.

Немного покопавшись в файле LEVELа я нашел Heightmap.
Heightmap состоит из 6 - 9 кусков размером 64 X 64 Px.
Каждый кусок начинается с такого заголовка: 5A 4F 4E 45 00 00 40 00 (это первые 8 байт, они всегда одинаковые).
Весь кусок без заголовка = 16384 Bytes.
Каждый PIXEL куска = 4 Bytes, это можно вышитать: 
(64 * 64 = 4096 получаем 4096 пикселов, теперь зная размер файла 16384 делим его на колличество пикселей (16384 / 4096 = 4 байта)


 В каждом пикселе содержится информация про карту высот и текстуру на этом пикселе, скорее всего первые 2 байта это карта высот, а вторые 2 байта это текстура и материал.

Здесь буду вылаживать картинки

NUCLEAR


OLYMPIC

Вступление

Очень захотелось новых карт в Vigilant 8 2nd offence, решил поковыряться в HEXе