Автор Тема: программа tim view не видит все TIM файлы  (Прочитано 12909 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн lconqeurorl

  • Пользователь
  • Сообщений: 29
    • Просмотр профиля
Re: программа tim view не видит все TIM файлы
« Ответ #60 : 11 Май 2014, 17:35:21 »
все переглядел 1337, там фейсы, помещения, эффекты и вот один ТИМ с оружием, ну я кстати про это тоже спрашивал, типо можно по двоичной системе как-то найти, если не трудно, можно в скринах показать, а то я только научился находить текстуру, а как дальше че об ней узнать нефига не понимаю


Оффлайн Mr Purpose

  • Пользователь
  • Сообщений: 2
    • Просмотр профиля
Re: программа tim view не видит все TIM файлы
« Ответ #62 : 11 Май 2014, 23:44:30 »
ну, начнём с того, что не надо гнать. знаешь ты или нет - это уже не суть. хотяб извинился за гон, чтоле. а то "люди памагите винда сломалась не открываются у меня файлы в винампе" например. прозвучало это примерно так. лично я тестил(хоть и не особо много) тв+ медленно и мощно, т2в - скоростной его собрат. думаю, код поиска примерно одинаковый, поэтому я в них уверен. они ищут все тимы. даже больше.

момент номер 2. прeжде чем нести чушь, подумай. видеопамять, он же врам, активен только в при работе носителя. как и в любой другой игре(я б даже сказал архитектуре) из внешней памати(ну или оперативной) некоторые значения попадают во врам... но не наоборот. из видеопамяти мы лишь можем узнать какие данные(точнее байты) нужно искать.

момент номер 3... херова гора сообщений, а толку 0. кто-то что-то вроде как-то... а вопрос еще актуален... попробую решить проблему.

lconqeurorl человек непонимаюший, это видно. я попробую очень просто и доступно пояснить что и как делать.

момент номер 1. ты играешь на еПСХе, как я вижу... кто-то сказал, что лучше юзать для сохранения врама пСХ... если честно, я думаю, что врам(а точнее фреймбуфер, т.е. часть врама) ничем не будет отличатся. эффеты идут не при попадания во врам, а после взятия картинки из врама. так что какой ты будешь юзать(если что, то юзать = использовать) эмулятор разницы нет.

шаг номер раз - запусти эмулятор, дойди до боя, в котором будут ванзеры, текстуры которых нужно изменить.

шаг номер два - заимей врам. это можно сделать сейвстейтом. ибо он сохраняет текущие врам, рам, и еще что-то. как минимум значения регистров. но нам оно не надо, мы графику меняем.
хочу отметить, что нужно получить "чистый" врам. проще это делается в pSX как раз. но, у тебя ePSXe, и мы делаем через сейвстейты. вообще, сейвстейты на ePSXe и PCSX - gzip архивы(*.gz). распаковать можно архиватором. самые популярные - винрар и севензип. я использую второй. после распаковки кидаем файлик в любой шестнадцатиричный редактор(не двоичный, как ты говорил ранее). я пользуюсь Tiny Hexer'ом, но можно пользоваться любым. суть у них одна. переходим по оффсету(смещению, адресу) 0x2733DF (0x40F от слова "GPU"). могу ошибаться, но в 2 разных играх оффсет оказался одинаковым. (у меня ePSXe 1.9.0). далее выделяем область, размером 0x100000. выделенную область сохраняем в отдельный файл. наш новый файл должен оказаться размером 1048576 байт, это ровно 1мб. если все готово, проверяем. PVV открывает не только сейвстейты. запускаешь PVV открываешь и то и то. если одинаково - все сделано правильно.
если это часть кажется слишком сложной - можно юзать pSX. но... если это сложно, то можешь сразу смириться со своей идеей. это не самое сложное, так скажем.

шаг номер три - ищем текстуру ванзера в PVV. в моём случае она оказалась сразу возле фреймбуфера.

видно, что палитры находится внутри полотна изображения.
и, да. область полотна выделена правильно(потом станет понятно почему)

шаг номер 4 - смотрим координаты полотна. в данном случае 320(ширина), 0(высота). это и видно на скриншоте.

шаг номер 5 - открываем врам в хексере(шестнадцатиричный редактор). переходим по оффсету 0х280. потому что высота 0 - это хорошо, ширина 320, это 0x140, но т.к. 1 пиксел врама это 2 байта, умножаем на 2 - получаем 0x280. а вообще формула проста(может пригодиться) (2048*высота+ширина)*2 и перевести в хекс(шестнадцатиричный вид). это очень просто делается в калькуляторе(если... а хотя какой если, венда у тебя скорее).



на скриншоте видно, что эти байты точно входят в искомую картинку(не тим, а именно картинку), но на самом деле их больше. ровно в 2 раза. не суть. я когда искал этого не знал.

шаг номер 6 - открываем образ в хексере. ищем данную последовательность байт... таких нашлось аж 11. но верной оказалось 1. но я этого тоже не знал. и могло оказаться, что это всё текстуры ванзеров. надо проверить.

проверка:
для начало узнаем, какой файл нужно открыть. лично у меня не получилось сразу кинуть образ(пишет что памяти не хватает, хотя её более чем), чтоб конкретно найти нужный оффсет, поэтому пробуем по файлам.



берем любой диапазон из выделенного, путь будет 0x764600. делим на 0х930(2352 - размер 1-го сектора на пс дисках), получаем 0xCDF. это 3295.

открываем образ в CDmage. ну или в любой другой программе, которая умеет показывать первый сектор файла. но именно эта програма умеет запихивать измененные файлы обратно в образ, что нам и надо.



упорядочиваем файлы по лба(начальным секторам, выделил красным) и ищем файл. 3295 между 452 и 4830(выделил зелёным). нужныц нам файл - IDATA.BIN. на нем пкм -> экстракт файлс. выбираешь куда удобнее.

далее открываем его(идату) в хексере. находим нужную нам последовательность байт. это 0x58dd10.

далее открываем его же в тайл молестере. он(молестер) открывает что угодно как картинку.
сначала немного изменим режим вывода:
view -> codec -> 2-dimensional
view -> zoom -> 200%
view -> mod -> 4bpp linear, reverse-order
ибо ванзеры в таком формате(как минимум тот, что на скрине с пвв, да и все остальные должны быть тоже)

далее переходим по оффсету 58dd10. проще нажать Ctrl+G и написать оффсет. выбрав справа хекс и абсолют.
смотрим... не то. лично мне это видно сразу.



повторяешь это до тех пор, пока не найдёшь нужный. подскажу сразу, это будет файл STGVRAM.BIN. и оффсет в нём 0x77b54



но так не особо красиво.

мутим палитру, получаем



шаг 7 - извлекай нужный файл.

шаг 8... надо подумать. по сути ты хочешь изменить цвета ванзеров, не перерисовывая их текстуры как таковой. если да, то можно тем же тайл молестером изменить её. хотя и перерисовать текстуры можно в нём же.

вобщем, вопрос был какой: где лежат текстуры. на этот вопрос я ответил. как их менять уже другая история.

з.ы. картинки удаляться через 14 дней(вроде везде так поставил)

Оффлайн SILENT_Pavel

  • Пользователь
  • Сообщений: 2734
    • Youtube
    • Просмотр профиля
Re: программа tim view не видит все TIM файлы
« Ответ #63 : 12 Май 2014, 00:06:45 »
del
---
А за тутор благодарю, не против если откопирую на некоторые вики страницы любительские с авторством? (перезалью картинки и т.д.)
« Последнее редактирование: 12 Май 2014, 13:34:10 от SILENT_Pavel »

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: программа tim view не видит все TIM файлы
« Ответ #64 : 12 Май 2014, 00:14:47 »
SILENT_Pavel или Mr Purpose, вынеси и здесь в отдельный топик. На будущее вообще тема была бы.

Оффлайн Mr Purpose

  • Пользователь
  • Сообщений: 2
    • Просмотр профиля
Re: программа tim view не видит все TIM файлы
« Ответ #65 : 12 Май 2014, 00:18:58 »
делай что хочешь. это был ответ, а не специально написаный тутор. это хоть и работа(много тыканиев пальцами в клаву и мышку) но по мне... это не прога, чтоб её купить. и даже не музло. оно относительно и так в открытом доступе. если надо - берите кто хочет. а указывать моё имя или нет - это на совести остальных. ибо я не буду шастать по инету в поисках этой или подобной статьи, и проверять, есть ли какая пометка, что это я когда-то написал...


и да, забыл. дай пример того, где плагин эффектами портит врам. пример - оригинал и неоригинал. должны быть 2 оочень похожих файла. просьба не менять что-то руками(я не про настройки плагинов). а дать то, что есть на самом деле
« Последнее редактирование: 12 Май 2014, 00:36:01 от Mr Purpose »

Оффлайн paul_met

  • Супермодератор
  • Сообщений: 8077
  • Пол: Мужской
  • Похититель эмуляции
    • Youtube
    • Просмотр профиля
Re: программа tim view не видит все TIM файлы
« Ответ #66 : 12 Май 2014, 08:08:37 »
Оказывается ничего и не запаковано. Автор темы просто зациклился на Тимах, а мы пошли ему на поводу. Про raw графику то забыли.

Цитата: SILENT_Pavel
Написал pSX потому что лично столкнулся с загаженным файлом vram сейвстата от ePSXe с популярным видео плагином, даже если в этом плагине выключить все эффекты, все равно память уродуется смазыванием каким-то и палитра уезжает в разные стороны (точнее уродуется именно палитра, а не графика). Возможно ePSXe ничего не загадит со СПЕЦИАЛЬНО подготовленным видео плагином без эффектов вообще.

Интересно, как данные vram могут зависеть от включенных эффектов в плагине и от него самого в принципе? Это же видео память самой приставки ,а не эмулятора/плагина. Если эмуляции правильная, то данные vram на всех эмулях в сейвстейтах, сделанных в идентичных условиях, должны совпадать.

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1294
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
Re: программа tim view не видит все TIM файлы
« Ответ #67 : 12 Май 2014, 13:24:47 »
Цитата: paul_met
Интересно, как данные vram могут зависеть от включенных эффектов в плагине и от него самого в принципе? Это же видео память самой приставки ,а не эмулятора/плагина. Если эмуляции правильная, то данные vram на всех эмулях в сейвстейтах, сделанных в идентичных условиях, должны совпадать.

Думаю, если это на самом деле так, то дело не в самом эмуле, а каком-то его плагине, который делает пост-рендер с эффектами сразу в VRAM. Но, мне кажется, на этот вопрос точнее ответит edgbla.

Оффлайн SILENT_Pavel

  • Пользователь
  • Сообщений: 2734
    • Youtube
    • Просмотр профиля
Re: программа tim view не видит все TIM файлы
« Ответ #68 : 12 Май 2014, 13:31:36 »
Лень проверять, может и глюкнуло что-то в ePSXe. По сути разница только в смещении полотна между эмуляторами, ну или это моя субъективная не любовь к ePSXe, наверное я был не прав, не так важно, тема немного не о том.
« Последнее редактирование: 12 Май 2014, 13:54:25 от SILENT_Pavel »

Оффлайн edgbla

  • Пользователь
  • Сообщений: 503
    • Просмотр профиля
Re: программа tim view не видит все TIM файлы
« Ответ #69 : 14 Май 2014, 20:20:00 »
Цитата: paul_met
Интересно, как данные vram могут зависеть от включенных эффектов в плагине и от него самого в принципе? Это же видео память самой приставки ,а не эмулятора/плагина. Если эмуляции правильная, то данные vram на всех эмулях в сейвстейтах, сделанных в идентичных условиях, должны совпадать.
Ну тут всё просто, текстуры и палитры в памяти должны совпадать на всех вменяемых плагинах/эмуляторах и не должны зависеть от эффектов, но вот с фрейм буферами ситуация совсем другая. Всё зависит от точности эмуляции, в подавляющем большинстве они не будут совпадать ни геометрически, ни цветом, собственно даже разные версии gpu (и возможно mdec) реальной железной консоли дают разные результаты, так что особенно переживать на этот счёт не стоит (при отсутствии видимых багов естественно).

Оффлайн SILENT_Pavel

  • Пользователь
  • Сообщений: 2734
    • Youtube
    • Просмотр профиля
Re: программа tim view не видит все TIM файлы
« Ответ #70 : 04 Июль 2014, 18:52:30 »
не против если откопирую на некоторые вики страницы любительские с авторством? (перезалью картинки и т.д.)
Ну вот часть картинок уже убита, вот тут бекап с живыми картинками: