Ну с извлечением все понятно (потрошу DOA2LE), а вот с редактированием возникли проблемы. При распаковке даже простых элементов меню (главный экран) вместо нормальных ровных картинок по всему рисунку (открывал в фотошопе через плагин) раскиданы куски. Оно так и надо? Есть возможность как-нибудь собрать их, чтоб отрадактировать и раскидать обратно?
Если кто не в курсе, то скажу что для того чтобы открыть текстуры в DOA2LE надо сменить расширение файла на PVR и добавить в hex редакторе заголовок размером 32 байта. Может искажение поэтому и происходт? Может я что не так делаю?
Потом вопрос как вставить текстуру обратно. Скажем перерисовал я сабж. Мне надо как то подгонять размер файла назад? Или просто убить заголовок и сменить расширение назад?
Цитата:При распаковке даже простых элементов меню (главный экран) вместо нормальных ровных картинок по всему рисунку (открывал в фотошопе через плагин) раскиданы куски. Оно так и надо?
Да так многие игры построены из большого количества маленьких текстур
Т.е качественно перевести не удастся? У меня был где то перевод от кудос - там переведено основное меню и некоторые другие вещи. Выходит они нумеровали квадратики, упорядочивали, перерисовывали и ставили на место?
Цитата:Выходит они нумеровали квадратики, упорядочивали, перерисовывали и ставили на место?
думаю да
Кажись истина где то рядом. Это называется twiddle format. В инете есть кое какие заготовки на эту тему. разбираюсь.
А ты уверен что делаешь заголовок с нужными параметрами?
Чем тебе помочь с этой прогой? Скомпилить?
Да, заголовок добавляю как надо. Отображается все тоже как должно, но как это сконвертить - вопрос. Прогу ВИДИМО надо скомпилить. Будет она работать отдельно или нет я не знаю и будет ли вообще.
По-видимому это то что нужно.
Тебе под какой формат ее скомпилить то ARGB0565, ARGB4444 или ARGB1555?
Хотя... прога конечно не доведена до ума совсем... Наверное я ее доделаю как надо. Жди.
Я если честно понятия не имею. Ща задумался над заголовком - выяснилось что они бывают разные и какой вставлять - хз. Попробовал эти самые разные. Фотошоп открывал то что сделал пенис но все другое зависало. Потом попробовал другой - все программы просмотра pvr открыли НОРМАЛЬНО текстуру, но только ее угол, хотя по идее должна быть вся картинка. Где почитать про заголовки PVR файлов?
Конечно они разные:)) Текстуры то разного формата бывают и размеров.
Нада порыться.
Что то хоть убей не помню где брал инфу о заголовках PVR (то ли в KATANA, то ли мне их дал SunDragon)
Но за то кое что вспомнил.
Заголовки бывают 2х типов, у одного вначале написано GBIX у другого PVRT.
GBIX занимает 32 байта, а PVRT 20 байт. Хотя бывают по моему еще какие то специфические, но встречаются редко.
У GBIX есть 2 дополнительных параметра в отличие от PVRT.
К сожалению я когда делал PVR Extractor/Patcher, то мне не нужно было заморачиваться со всеми параметрами, а достаточно было взять только размеры текстуры и заголовка, поэтому в исходниках не понять для чего нужны другие параметры, а если и понятно для чего, то не понятно какие значения могут иметь.
Там есть ключевой параметр который хранит в себе атрибуты (как раз таким атрибутом является twiddle), но блин это Integer, а значит атрибуты эти, это флаги, не зная которых, сложно понять какими они бывают вообще и что каждый из них значит.
А какие конкретно значения надо вписать если попробовать методом научного тыка?
В тот раз мне дали 32 байта заголовок, его я и вставил. Тогда эта фигня и получилась.
Боюсь методом тыка не получится, ибо значения могут очень отличаться, там не просто цифры 1, 2, 3...
Образцы заголовков файла можно взять при пересохранении текстур в фотошопе в формате PVR в разных вариациях. Только вот как определить длинну заголовка? Весь при пересохранении изменяется и формат данных в файле.
Ну дык вот там все атрибуты есть:
Код:
MODE_ARGB1555 0x00
MODE_RGB565 0x01
MODE_ARGB4444 0x02
MODE_YUV422 0x03
MODE_BUMPMAP 0x04
MODE_RGB555 0x05
MODE_ARGB8888 0x06
MODE_TWIDDLE0x0100
MODE_TWIDDLE_MIPMAP 0x0200
MODE_COMPRESSED 0x0300
MODE_COMPRESSED_MIPMAP 0x0400
MODE_CLUT4 0x0500
MODE_CLUT4_MIPMAP 0x0600
MODE_CLUT8 0x0700
MODE_CLUT8_MIPMAP 0x0800
MODE_RECTANGLE 0x0900
MODE_STRIDE 0x0b00
MODE_TWIDDLED_RECTANGLE 0x0d00
Зачем тебе определять эту длинну?
Она бывает 2х видов и все, к тому же тебе вообще заголовки не нужны, ибо в игровых текстурах их нет. Значит они все одного формата, который тебе и требуется определить.
По сути попробуй всегда использовать тип PVRT, потому что я лично вообще не пойму смысла от GBIX, он там в себе ничего важного не несет.
Атрибуты ты получил, подставляй в заголовок.
Значение атрибутов хранится в виде типа Integer начиная с 9 байта длинной в 4 байта.
Хотя можешь и через фотошоп подставлять:)
Чет я нифига не понял.
Минимап не надо я так понимаю - это типа уменьшалка всех вариантов.
+ В заголовке хранится размер картинки (длинна+высота). Еее выходит тоже нужно угадывать для каждого изображения?