Chief-NET

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Chief-NET » Программирование » MapImage2.0


MapImage2.0

Сообщений 1 страница 16 из 16

1

Если кто не знает, то это программа для конвертирования тайлов, карты и палитры в BMP и наоборот.
Также в архиве модифицированная версия этой программы Маратом, в которой добавлена поддержка тайловых карт СНЕС и PC Engine.
И приложены готовые компоненты для формирования рисунка, вытащенные из рома Uncharted Waters - New Horizons (U) [!].gen.
Всё хотел узнать, Марат, куда подевалось меню Load Map without Header, Tiles and Palette в твоей версии? Оно позволяет сформировать рисунок .bmp с "ручным" указанием его размера.
Если пользоваться простым Load Map, Tiles and Palette, то размер рисунка с двухбайтовой картой надо ставить в самой карте. Это первые 4 байта. Для однобайтовой карты (single), это будет первые два байта.
Руководство по использованию программы.
Для того, чтобы программа понимала тайловые карты, вытащенные из оригинальных ромов, необходимо юзать map fixer.  В архиве также находится руководство по его использования, и в папке "примеры" образцы тайловых карт (конвертированной, оригинальной, с заголовком и без). Это всё актуально для игры Uncharted Waters - New Horizons (U) [!].gen.

P. S. уже подзабыл, что глючило в проге. Вроде имел место такой момент, что её нужно было заново открывать, чтобы сбросить настройки, иначе она косячила даже с верно заданными параметрами, неверно формирую изображения.
Нужны тестеры.

Отредактировано Mefistotel (2013-01-11 15:11:30)

2

Всё хотел узнать, Марат, куда подевалось меню Load Map without Header, Tiles and Palette в твоей версии? Оно позволяет сформировать рисунок .bmp с "ручным" указанием его размера.

Не помню про такое меню.
Было ли оно вообще?

3

Если пользоваться простым Load Map, Tiles and Palette, то размер рисунка с двухбайтовой картой надо ставить в самой карте. Это первые 4 байта. Для однобайтовой карты (single), это будет первые два байта.

Если мне не изменяет память, то для Сеги ширина и высот карты должна быть указана в BigEndian формате, тогда как для остальных в интеловском.

4

Обновил первый пост и архив с прогой. Добавил туда еще одну програмку Джинни map fixer. Она позволяет менять формат тайловых карт в понятный для  map image.

5

Маратыч, а у тебя исходники то модификации не остались?
Начать хотелось бы с малого. Сделать так, как в оригинале, чтобы программа, когда ее снова открываешь, запоминала настройки прошлого сенаса и возврата менюшки Load Map without Header, Tiles and Palette. Можно посмотреть в оригинальной версии. Там так.

Отредактировано Mefistotel (2013-01-11 16:59:35)

6

В тех исходниках, что давал мне Джинн не было такого меню. Это, видимо, он позже добавил. Не зря эта версия называется 2.012.
Исходники у меня есть.

7

Кароче, нефига я не разобрался, какого формата ей данные совать (если для сеги). Мап есть, одна строка CRAM есть, но картинка получается "пися енота".

Программа к программе... Нет, чтобы запилить это все в одно, удобное что-то) Тем более, если есть сорсы. Зачем втискивать в первые байты какую-то фигню?, если можно это сделать в красивом интерфейсе, удобном.

8

В аську выходи. :) Поговорим.

9

Ужо разобрался)

Проблема была только с палитрой. Ему, видите ли, нужна палитра в формате: 3 байта на цвет. Т.е. сначала вытягиваем R, G, B из двух-байтового цвета сеги:

Код:
    R := (SMD^[I] and $E) * $10;
    G := (SMD^[I] div $10 and $E) * $10;
    B := (SMD^[I] div $100 and $E) * $10;

И прямо по порядку эти R, G, B пишем. Это получится: 16 цветов в палитре * 2 * 4 * 3 байта = 384 байта. Ну и до 768 байт нужно запилить нулями остальное.

Либо, как мне подсказали, таскать палитру из сейва через GSavestate.

10

Ему, видите ли, нужна палитра в формате: 3 байта на цвет.

Ну ясное ведь дело, что палитра должна быть стандартная RGB. Там же не один сеговский формат графики используется. Настройки формата палитры пока нет.

11

Программа к программе... Нет, чтобы запилить это все в одно, удобное что-то) Тем более, если есть сорсы. Зачем втискивать в первые байты какую-то фигню?, если можно это сделать в красивом интерфейсе, удобном.

Ну вот, давай запили.
Сделали б тайловый редактор умеющий открывать pal+map+bin для Sega, ну и для Snes заодно если нету.
Для Nes то есть NesScreenTool.

12

Да лучше вообще универсальную сделать, под большинство форматов.

13

Обновил программу.
Добавил новый формат тайлов и карт для Sega Master System.

14

Программа обновлена.
Пофиксены баги в новом формате Sega Master System. Спасибо Гайверу, за тестинг.
Добавил новый формат хранения тайлов 2 bpp game boy color.

15

Очередное обновление.
-Добавил формат хранения карты тайлов gameboy color.
-Переписал способ хранения карт в памяти. Это облегчит в будущем   добавление новых форматов карт.
-Добавил меню About.
-Пофиксил баги.
В архив также вложил утилиту для объединения карты тайлов и аттрибуттов тайлов для gameboy color.

Отредактировано Марат (2015-02-04 00:30:58)

16

Update
-Пофиксил баг из-за которого 4 битный BMP файл неправильно конвертировался в 8 битный BMP.
-Пофиксил неправильное определение индекса палитры для формата карт тайлов GameBoy Color.


Вы здесь » Chief-NET » Программирование » MapImage2.0