В этой статье соберем простой шейдер, который будет искажать спрайт создавая атмосферу старых добрых мониторов из научно фантастических фильмов.
Если вы вообще ничего не понимаете в шейдерах, советую начать с серии небольших статей на канале.
Погнали!
Закидываем спрайт. И подключаем шейдер.
Первым делом нам надо сделать эффект строк.
Для этого вполне подойдет вертикальный градиент с UV координат.
Берем UV.y и кладем в цвет.
В альфу я подал 1.0, чтобы работать со всей поверхностью спрайта.
Теперь надо сделать этот градиент повторяющимся несколько раз. Для этого прекрасно подходит наш любимый синус.
Далее, приберем сглаживание градиента, чтобы строки были более выраженные. Для этого воспользуемся функцией step.
Строки готовы.
Пришло время вернуть наш оригинальный спрайт, и посмотреть что получилось.
Подмешиваем значения строк в оригинальные координаты,и отключаем принудительную альфу :
Так как у нас чистые значения белого и черного, то очевидно что части спрайта которые смешивались с белым находятся где то в нулевых позициях. Давайте вытащим их обратно.
Для этого поделим grad например на 20.
И вот уже мы видим как части спрайта вернулись обратно и строки сдвигают изображение лесенкой.
Далее нам остается подмешать зеленый цвет на спрайт, и подмешать наши строки в альфа канал.
Накинем жизни в строки и заставим их двигаться. Тут всё на ваше усмотрение. Можно сделать так чтобы строки плавно плыли. Для этого просто подмешиваем TIME в синус.
Либо сделать так чтобы строки меняли свое положение чуть более обрывисто
На этом всё.
Подписывайтесь на канал, вступайте в группу в ВК, и не забывайте что у нас есть дискорд сервер.
Удачи в изучении годо !