Основи Cocos2d-x

Статті про розробку ігор за допомогою Cocos2d-x

Корисні поради по imagemagick

Posted at — Sep 29, 2019

imagemagick — консольна програма для обробки зображень.

Розділити зображення

Наприклад, ось так можна розрізати один файл зображення на кілька менших:

convert ./Skeleton_43x37.png -crop 43x37 skeleton_attack_%02d.png

Тут

Об'єднати кілька зображень

convert +append ./skeleton_attack_00.png ./skeleton_attack_01.png ./jh.png
convert -append ./skeleton_attack_00.png ./skeleton_attack_01.png ./jv.png

Тут +append з'єднує зображення горизонтально (одне збоку від одного), а -append вертикально (одне над одним).

Змінити розмір анімації

Зменшення gif-файлу є досить складним завданням, з неочікуваними особливостями

convert input.gif -coalesce -scale 385x334 -fuzz 2% +dither -layers Optimize scaled.gif

Створення анімації

Теоретично, за допомогою imagemagick можна створювати гіфки, але це вимагає досить складних скриптів. Простіше використати ffmpeg:

ffmpeg -framerate 60 -pattern_type glob -i './skeleton_attack_*.png' c1.gif

Анімовані скріншоти у цих постах зроблені за допомогою Peek в Ubuntu.

Вирізати певну послідовність з анімації

Теоретично, щоб вирізати певну послідовність кадрів з гіфки, можна перетворити її на ряд кадрів, видалити непотрібні та склеїти назад.

Проте є простіші способи, наприклад, зі спеціальною утилітою gifsicle.

Така команда зберігає кадри з 25-го по 78-й у іншу гіфку:

gifsicle ./dragon_bones_mecha_03.gif '#25-78' > zz.gif

А ось така просто видаляє вказаний діапазон кадрів:

gifsicle ./dragon_bones_mecha_03.gif --delete '#01-25' > zz01.gif

Також різні перетворення гіфок можна виконати цим онлайновим інструментом.