Перейти к содержанию

Spr + rgba


Magnum

Рекомендуемые сообщения

Бывают реально существующие спрайты с кадрами в формате rgba? Можно ли сделать спрайт в котором будут все кадры в rgba? когда я такой создал, клиент рейзит ошибку при попытке чтения. позже продебажу и отпишу результат, а пока скажите кто что по теме знает

Ссылка на комментарий
Поделиться на другие сайты

На самом деле не шипко углублялся в тему, но насколько мне известно спрайт читается как bmp и за прозрачный цвет берется всем нам известный розовый 255,0,255. Так что думаю нет, альфа-каналов в игре замечено не было. Либо прозрачно, либо нет)

Ссылка на комментарий
Поделиться на другие сайты

p.s. из твоей подписи

при попытке продажи таковых - будьте уверены, что вас обманут.

наверное, ты имел ввиду "покупки"

Ссылка на комментарий
Поделиться на другие сайты

Да насчет подписи - пофиг, смысл передан. А теперь насчет spr - там примерно следующий формат:

заголовок

...

количество кадров с палитрой (палитра из 256 3-байтных или 4-байтных неважно, значений), на которую ссылается 8-битные значения индекса палитры. аналог 8-битного GIF Это тот формат который все юзают

...

количество кадров в формате RGBA - без палитры, без сжатия, чистый 32-битный bmp.

вот мне сжатие не всралось, хочу без сжатия картинки.

Ссылка на комментарий
Поделиться на другие сайты

Так что думаю нет, альфа-каналов в игре замечено не было. Либо прозрачно, либо нет)

Прозрачность задается в act файлах. Пример не фулл прозрачности в игре - Doppelganger.

количество кадров в формате RGBA - без палитры, без сжатия, чистый 32-битный bmp.

вот мне сжатие не всралось, хочу без сжатия картинки.

Предполагаю, что Вам не получится использовать 32-битные bmp без палитры потому, что в таком случае клиент бы не смог применять палитры(покраски) к спрайтам.

Ссылка на комментарий
Поделиться на другие сайты

Так что думаю нет, альфа-каналов в игре замечено не было. Либо прозрачно, либо нет)

Прозрачность задается в act файлах. Пример не фулл прозрачности в игре - Doppelganger.

количество кадров в формате RGBA - без палитры, без сжатия, чистый 32-битный bmp.

вот мне сжатие не всралось, хочу без сжатия картинки.

Предполагаю, что Вам не получится использовать 32-битные bmp без палитры потому, что в таком случае клиент бы не смог применять палитры(покраски) к спрайтам.

уже понял, что в act, но не прозрачность мне нужна. Там есть поле тип спрайта. Оно и определяет - это изображение на основе палитры или несжатое. Вот только нормального описания актов я не нашел. http://mist.in/gratia/ro/spr/ActFileFormatFix.html - неполное, и никуда не годится.

Ссылка на комментарий
Поделиться на другие сайты

Проблема решилась программой actor) там можно его изменять. Потраченные структуре есть тут https://gitorious.org/open-ragnarok/roint/blobs/c069cbc43bad9f88b02f8b9648b6966a0c4fc3f9/include/roint/act.h . Чисто для ознакомления

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

Допустим, Вы сформировали спрайт, в котором картинки хранятся не в индексах и палитре, а в RGBA массивах.

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

Что было дальше?

Если Вы не меняли цвета исходной картинки, то разницы в отображении соответственно не будет.

Ссылка на комментарий
Поделиться на другие сайты

Я думаю что если запустить РО с 32-битным цветом, то будет разница. А вообще надо что-то типа такого разноцветного изображения туда поставить, как телеканалы во время профилактики выводят, и посмотреть какие оттенки различаются.

Ссылка на комментарий
Поделиться на другие сайты

Что в первом варианте с индексами и палитрой есть возможность использовать любой цвет из 16777216 комбинаций цветов, что в другом.

Сжатие, которое применяется в первом варианте, не изменяет/не искажает цветовые данные. На выходе они получаются оригинальными.

А вообще надо что-то типа такого разноцветного изображения туда поставить, как телеканалы во время профилактики выводят, и посмотреть какие оттенки различаются.

Хорошая идея для проверки, но думаю разницы не будет.

Изменено пользователем Functor
Ссылка на комментарий
Поделиться на другие сайты

Верно, разница в количестве разных цветов, но не в самых цветах.

Что в первом, что во втором варианте цвет #FF8855 будет на мониторе выглядеть одинаково.

Используя RGBA массивы Вы максимум повысите разнообразие цветов, но не их качество в отображении.

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...
Яндекс.Метрика