Брошенный автомобиль
музыка: Max Richter - On the Nature of Daylight
Таймлапс
музыка: Narvent — Her Eyes (slowed + reverb)
музыка: Max Richter - On the Nature of Daylight
Таймлапс
музыка: Narvent — Her Eyes (slowed + reverb)
На всякий случай для ЛЛ. Делаю очень неспеша DIY брелочек с анимированным пиксель-артом. Тут часть технического процесса и вопрос автору артов на предмет мыслей как лучше кромсать его творение на пиксели.
Скучно, не интересно, не информативно, недоделанно. Если такое пугает - не тратьте время. Серьёзно. С уважением и бережным моим к нему (вашему времени) отношением.
О, а я как раз экспериментировал с одним из ваших артов. Задача - сделать простой не требовательный кодек для контроллера ESP32, который бы хорошо и без тормозов мог прокручивать ваши анимации на недорогих дисплейчиках типа такого
Идея примерно такая.
- Сперва нужно определить реальное разрешение анимации. Ну то есть то минимальное, которого достаточно, чтобы передать пиксель-арт без потери качества. В рассматриваемом примере оказалось, что изображение можно уменьшить без потерь качества в 8 раз, но уменьшать надо аккуратно.
Здесь видно, что границы между "пикселями" 8*8 (назовём их блоками) немного грязные. Это значит, что определять цвет каждого пикселя при уменьшении нужно через медианную фильтрацию. Ну или просто просто брать все пиксели блока и определять цвет, который чаще всего среди них встречается. Это и будет цвет пикселя, соответствующего блоку в уменьшенной картинке.
Далее давайте предположим, что вся анимация у нас без склеек разных сюжетов. То есть у нас есть некий общий слабо меняющийся фон, и есть какие-то изменения, которые на него можно нанести оверлеем с прозрачными участками.
В данном примере это падающий снег. Где-то это дымок, или капли дождя, или круги на воде в лужах, или пролетающие мимо окна поезда столбы и деревья...
Очень натуральненько выглядит, не скажешь, что по пикселям в редакторе нарисован, да?
Окей, дальше глянуть бы насколько этот наш медианный фон отличается от отдельных кадров. И тут нас ждёт неприятный сюрприз:
Значит функция медианы только визуально хорошо работает, а на деле получается дрейф цвета из-за частых изменений в пикселях. Штош, давайте придумывать новый фильтр.
Но сперва просто сравним пару соседних кадров...
Короче... тут нарисовался небольшой тупик. Я, конечно могу добавить некий треш-холд, при котором разница в оттенках не будет учитываться, но мне нужно мнение автора этих работ. Не испорчу ли я по его мнению шарм и прелесть его пиксель-артовых анимаций? Может быть у него есть идеи как иначе подойти к вопросу?
Суть проблемы коротко. Хочется не сильно меняющиеся пиксели на анимации чтоб вовсе не меняли своего цвета вообще. А меняющиеся занимали не так много площади за раз. Тогда будущему кодеку будет проще отрисовывать изменения на слабо железе карманного брелочка с экранчиком.
Пардон, что пост получился недоделанным и каким-то промежуточным, но тему я не оставлю. Уж больно хочется мне такой подарочек соорудить дочке.
Если кто захочет поиграться с данными, ссылка на репу где лежат блокноты в верхней части поста. Там же простенькая утилитка, которая разобьёт анимацию на кадры и сохранит их в пронумерованные bmp.
Если есть идеи как что покрутить - предлагайте. Интересна дискуссия.
музыка: Cigarettes After Sex - Opera House (Instrumental)
музыка: after dark - mr.kitty ( slowed + reverb )
я не знаю как красиво написать "Уютное видеонаблюдение" :)
музыка: tilekid - you not the same
музыка: Willix & hiræth - eternal pain
Кадр из видео автора GoodMan_Ekim был использован в качестве основы для анимации
Сорян что ответным постом, но видео по другому не крепится. Снял позавчера