Создал небольшую программу для просмотра картинок .bimage из игры Doom 3 bfg edition. Вдохновлялся стандартным средством просмотра изображений времён Windows 7.
Эта программка — побочный продукт обновления русификатора Doom 3 bfg edition. Изначально я делал генератор шрифтов для этой игры, а шрифты там — это .dat файл и картинка в формате .bimage. Чтобы создать .bimage нужно разбираться в структуре формата. А т.к. исходные коды Doom 3 bfg edition открыты, то я сделал в своём генераторе шрифтов и создание .bimage картинок. Чтобы посмотреть что получилось можно было использовать BFG-Resource-File-Manager, но он умеет просматривать .bimage, когда они уже упакованы в .resources архив. Поэтому это не особо удобно. В результате я сделал свой просмотрщик.
Мой просмотрщик умеет:
- Открывать .bimage когда они уже распакованы из игровых архивов
- Открывать .bimage прямо из файлов .resources, не распаковывая.
- Показывать все mipmap уровни картинки внутри .bimage файла
- Показывать cube face для .bimage файлов с cubemap изображениями. (В одной bimage картинке могут быть 6 картинок для cubemap)
- Сохранять .bimage картинку как .png
- Распаковать все .bimage файлы из выбранного .resources файла.
Не знаю нужна ли кому-либо такая программа, создавал я её для себя просто потому что могу) Но если кому-то пригодится, то хорошо.
Техническая инфа — программа написана на Python, в комплекте с ней идёт texconv (консольная утилита, поддерживающая DXT сжатие, используется на этапе открывания картинки и конвертации в tga). Фактически при первом запуске во временной папке появляются всякие python библиотеки и texconv, которые все картинки и обрабатывают. При закрытии программы всё это удаляется автоматически. Я мог бы выпустить это и как просто .py скрипт на 45 килобайт, но тогда для его работы нужно бы установить python и десяток python библиотек. А так всё работает на любом компе и ничего ставить не надо. P.s. программа использует python 3.13, поэтому запускается на windows 10 и выше. Texconv там встроен тоже достаточно поздних версий, требующих 10-ку. Но можно запустить на windows 7, если использовать Vxkex.
Скачать программу можно тут
https://drive.google.com/file/d/1dcZ73ikBtpjk9InMjPdlextLDBELS8cL/view
И нет, я не стал программистом и ничего не понимаю в программировании. Эту программу я создал за месяц с помощью нескольких бесплатных нейросетей. Хотя это было почти также сложно как создавать самому, т.к. не существует такой кнопки как «создай мне готовую рабочую программу для таких-то нужд». Сначала я скормил нейросетям исходники doom 3 bfg edition, относящиеся к формату .bimage, попросил нейросеть создать описание формата, затем сделать примитивный конвертор .tga в bimage и обратно, потом пару недель его переделывал заново, пока он не заработал. И только после этого на базе получившегося кода для конвертации удалось начать делать этот просмотрщик. В процессе создания возникало 100500 проблем, из-за чего приходилось переделывать разные части скрипта по много раз и спрашивать у множества нейросетей вероятную причину косяка, пробуя варианты решений от каждой нейросети отдельно и перепроверяя слова одной нейросети в других. Знали бы вы как нейросети с умным видом несут чушь) Текущая последняя версия скрипта — это 1030 строк кода на python.