Важная информация

User Tag List

Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 15

Тема: Как вырезать спрайты

  1. #1
    Master Аватар для Bedazzle
    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    568
    Благодарностей: 121
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Как вырезать спрайты

    Подозреваю, что уже сто раз такое делали, и есть готовый инструмент.

    Имеется картинка с набором спрайтов, например такая. Тыкните пожалуйста носом в консольную утилитку для винды, которой можно передать координаты, размер спрайта, имя файла, и она это дело сохранит в виде последовательности байт.
    Хорошо, чтобы были ключики: выводить поколоночно или построчно, линии подряд, или через 8, как в экране.

    Смотрел Cutter от Jerry, но в хелпе ни слова про местоположение спрайта.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    Guru Аватар для goodboy
    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    9,455
    Благодарностей: 3169
    Записей в дневнике
    1
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    наверно проще перегнать на-спек (bmp/png2scr), а там хоть через peek/poke

  4. Этот пользователь поблагодарил goodboy за это полезное сообщение:
    Bedazzle (06.03.2016)

  5. #3
    Master Аватар для Bedazzle
    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    568
    Благодарностей: 121
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    наверно проще перегнать на-спек (bmp/png2scr), а там хоть через peek/poke
    Тогда уж проще свою приблуду наваять
    Но я ж ленивый.

  6. #4
    Master Аватар для Eagle
    Регистрация
    14.09.2014
    Адрес
    г. Гусь-Хрустальный
    Сообщений
    593
    Благодарностей: 107
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Есть же SpriteGrabber
    Вложения Вложения

    Скрытый текст

    ZX Spectrum +2 +divIDE + BDI
    Profi 1024k plus
    Scorpion ZS-256 Turbo+
    ZX Evolution rev.C2+NeoGS+SDCard HxC Floppy Emulator
    ZX Evolution rev.C2+ZXM-SoundCard Extreme+ZXM-MoonSound
    AVR ZX Spectrum V2.0
    Орион 128
    [свернуть]

  7. Этот пользователь поблагодарил Eagle за это полезное сообщение:
    Bedazzle (06.03.2016)

  8. #5
    Master Аватар для Bedazzle
    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    568
    Благодарностей: 121
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Eagle Посмотреть сообщение
    Есть же SpriteGrabber
    Спасибо, но не пойдёт, мне для автоматизации консольная вещь нужна.

  9. #6
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    3,363
    Благодарностей: 706
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Bedazzle, если подправишь спрайты то бери вот эту
    http://zx-pk.ru/showthread.php?t=24919&highlight=
    С уважением,
    Jerri / Red Triangle.
    [02.05.2014] не забудь этот день. Чубайс должен умереть. Dixi.
    [l'Abbey des morts TSEvo EV...5%] kiwi кошелек +79178162712

  10. Этот пользователь поблагодарил jerri за это полезное сообщение:
    Bedazzle (10.03.2016)

  11. #7
    Master Аватар для Bedazzle
    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    568
    Благодарностей: 121
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от jerri Посмотреть сообщение
    Bedazzle, если подправишь спрайты то бери вот эту
    http://zx-pk.ru/showthread.php?t=24919&highlight=
    я так и не вкурил, как указать где в картинке находится какой спрайт :/

    - - - Добавлено - - -

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

    Код:
    import Image
    
    im = Image.open('spritesheet.png')
    rgb_im = im.convert('RGB')
    
    def extractbyte(xfrom, yfrom, width, height, strFilename):
    	lst = bytearray()
    
    	for y in range(yfrom * 8, (yfrom + height) * 8):
    		for x in range(xfrom, (xfrom + width)):
    			byte = 0
    			for bit in range(8):
    				r, g, b = rgb_im.getpixel((x*8 + bit, y))
    			
    				if r+g+b != 0:
    					byte = byte + 2**(7-bit)
    
    			byte = 255 - byte
    					
    			lst.append(byte)
    			
    	newFile = open (strFilename, "wb")
    	newFile.write(lst)
    		
    		
    extractbyte(16, 25, 4, 3, "head.bin")	# head
    extractbyte(16, 28, 4, 3, "legs.bin")	# legs
    
    extractbyte(21, 25, 4, 3, "head2.bin")	# head2
    extractbyte(26, 25, 4, 3, "headmask.bin")	# head mask

  12. #8
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    3,363
    Благодарностей: 706
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Bedazzle, вся картинка спрайт или набор спрайтов

    вот как то так
    Нажмите на изображение для увеличения. 

Название:	fire_gfx.png 
Просмотров:	129 
Размер:	1.3 Кб 
ID:	56368

    и при запуске создается бинарь где этот файл в выбранном формате
    С уважением,
    Jerri / Red Triangle.
    [02.05.2014] не забудь этот день. Чубайс должен умереть. Dixi.
    [l'Abbey des morts TSEvo EV...5%] kiwi кошелек +79178162712

  13. Этот пользователь поблагодарил jerri за это полезное сообщение:
    Bedazzle (11.03.2016)

  14. #9
    Master Аватар для Bedazzle
    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    568
    Благодарностей: 121
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от jerri Посмотреть сообщение
    Bedazzle, вся картинка спрайт или набор спрайтов
    У меня разной ширины спрайты. Ну, и удобно, когда вся графика в одном файле - крути как хочешь, копируй/заменяй.
    Так что пока буду костыльками.

  15. #10
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    3,363
    Благодарностей: 706
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Bedazzle, на каждый набор спрайтов - своя картинка
    т.е hero.png, enemy_tincan.png
    С уважением,
    Jerri / Red Triangle.
    [02.05.2014] не забудь этот день. Чубайс должен умереть. Dixi.
    [l'Abbey des morts TSEvo EV...5%] kiwi кошелек +79178162712

Страница 1 из 2 12 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ищу спрайты/тайлы
    от baxter в разделе Разное
    Ответов: 1
    Последнее: 21.03.2015, 22:04
  2. dehrust и спрайты
    от drbars в разделе Программирование
    Ответов: 21
    Последнее: 15.01.2013, 15:51
  3. Спрайты в бейсике
    от AER в разделе Для начинающих
    Ответов: 13
    Последнее: 28.03.2010, 10:50
  4. Спрайты из игр
    от newart в разделе Графика
    Ответов: 14
    Последнее: 16.07.2009, 20:07

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •