ASCII-art Шейдер а-ля Watch Dogs

Я возвращаюсь к Магии шейдеров и сегодня хочу, как обычно, не вдаваясь в детали, рассказать как бы я сделал шейдер для полноэкранного пост-эффекта а-ля Watch Dogs.

203203

Пример анимации демонстрирует сильную сторону алгоритма в оттенках теней в нижней части сцены.
Решить проблему сглаживания, которая, собственно, и составляет техническую сторону ASCII-арта - это был бы прорыв. В примере это видно на переходе от темноты к краю площадки: используются "11))):::" по принципу интенсивности закраски всего знакоместа, но не используются символы нижнего регистра, без которых не обошёлся бы живой художник, для закраски только нижней половины знакоместа.

1
Ответить

Вы, наверное, имели в виду слабую сторону, а не сильную?

Я предполагаю, что можно сделать так: расширить "палитру" в LUT текстуре,— добавить больше символов и сортировать не только по интенсивности, но и и по расположению в знакоместе. Тогда можно сделать маленькую картинку например в 4х больше и на последнем шаге семплировать окрестности пикселя для выбора символа с правильным расположнием в знакоместе, надо пробовать в общем!

1
Ответить