Раньше я уже пробовал разнообразить сетку пикселизации через ее поворот и перспективное искажение. Здесь мне захотелось сделать сетку еще менее регулярной, превратить ее в нечто вроде зеркальных осколков. Работал фильтр так:
1. Создавалось 4 слоя с простой квадратной пикселизацией.
2. Каждый из слоев получал свой случайный угол поворота и масштаб.
3. Цветовые значения всех слоев складывались в общую сумму в диапазоне 0...4.
4. Целая часть суммы отбрасывалась, оставалась только дробная в диапазоне 0...1.
5. Дробная часть использовалась для дисплейсмента сигнала из камеры.
Большой размер пикселизации давал более кубистский эффект, а при уменьшении визуал напоминал скорее пуантилизм.
Для последовательной работы с четырьмя слоями я применил цикл
for. Долгое время я остерегался использовать условия и циклы внутри шейдеров, опасаясь снижения производительности. Однако со временем я заметил, что небольшие условия и циклы не создают особенной нагрузки, и при этом позволяют получать более сложные и непредсказуемые эффекты.Изображения сняты через фильтр:
▹ glCam / hair cutter






