Инструменты пользователя

Инструменты сайта


tim

Это старая версия документа!


TIM

TIM - это стандартный формат графических файлов для PlayStation. Структура TIM в значительной степени отражает принцип организации текстур в видеопамяти.

Файл состоит из трех логических блоков: заголовка, палитры (CLUT) и данных изображения. Блоки CLUT и данных изображения имеют схожее внутреннее устройство; при загрузке файла TIM в кадровый буфер PlayStation они обрабатываются одинако. Блок CLUT является необязательным: во-первых, он не требуется, если текстура закодирована в 16-битном или 24-битном режиме, во-вторых, даже если текстура индексированная, CLUT может быть загружен из другого файла.

Заголовок

Заголовок начинается с байта-идентификатора. Его значение является постоянным для всех файлов формата TIM и должно быть равно 0x10. За ним идут три нулевых байта.

Следующее 32-битное слово содержит битовые флаги, определяющие основные свойства изображения:

  • Биты 0-1 - глубина цвета (BPP):
    • 00 (0) - 4 бита на пиксель (16 цветов, используется CLUT)
    • 01 (1) - 8 бит на пиксель (256 цветов, используется CLUT)
    • 10 (2) - 16 бит на пиксель (без CLUT)
    • 11 (3) - 24 бит на пиксель (без CLUT)
  • Бит 3 - наличие в файле CLUT (как правило, этот флаг установлен, если значение BPP равно 00 или 01)
    • 0 - CLUT отсутствует
    • 1 - CLUT присутствует.

Блок CLUT

CLUT состоит из 12-байтного заголовка и собственно байтов палитры.

Заголовок состоит из:

  • 32-битного слова, в котором хранится размер всего блока CLUT в байтах (включая и заголовк, и данные)
  • 16-битных координат X, Y, которые указывают на позицию CLUT в видеопамяти. Координаты выражены в логических 16-битных пикселях VRAM. Они используются для загрузки данных в видеопамять командой GP0(A0h)
  • 16-битных значений width, height, которые обозначают ширину и высоту CLUT. Ширина CLUT зависит от глубины цвета: 16 пикселей для 4-битных изображений и 256 пикселей для 16-битных. Высота CLUT (количество строк) обычно равна 1, но может быть и больше, если текстура поддерживает вариативные палитры.

Блок изображения

Изображение хранится по тому же принципу, что и CLUT - такой же заголовок и данные.

tim.1792082966.txt.gz · Последнее изменение: — gecko

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki