Своего рода логическое продолжение предыдущей статьи.
На сей раз выйдем в глобальное пространство, и поправим баги. Настройки проекта : Для того чтобы шейдер применился ко всему экрану накинем CanvasLayer, под него положим ColorRect и подключим на него шейдер. Закидываем в шейдер изображение всего экрана Если вы всё сделали правильно, то увидите спрайт который лежит в сцене. У меня это прекрасное болото в лесу. Дальше рисуем градиент, который будет в последствии деформировать наш экран.
Тут всё по классике - добавляем вектор центра экрана (cent) и вычитаем его из UV градиента.
Для того чтобы его увидеть, я временно вывел его в COLOR. Градиент есть. Давайте сразу его «подрежем» через smoothstep . Так как у нас должно быть круглое «стекло», поправим этот момент.
Добавляем переменную которая будет считать разницу между шириной и высотой экрана. И подмешаем это значение в радиус градиента. Возможно, после этих правок вы не увидите на экране ваш градиент. Потому что он сдвинется в левую час