Задать вопрос
@Sian
junior front dev

Как анимировать такой фон?

64de2f1389a4f662000394.png

1) где я могу взять подобную картинку? сгенерировать? может есть кто знает хорошие сервисы? Aİ leonardo не помог
2) как лучше сделать анимацию? canvas? gsap?

пока не могу даже понять в какую сторону двигаться
  • Вопрос задан
  • 189 просмотров
Подписаться 2 Сложный 2 комментария
Решения вопроса 1
sfi0zy
@sfi0zy
Creative frontend developer
Неоднородные плавные искривления никак не получится сделать в рамках CSS или SVG. Плюс волна трехмерная, поэтому изобретать что-то в 2d-канвасе будет непрактично и скорее всего сложно в плане производительности. Поэтому использование WebGL - это естественный выбор. Конкретные библиотеки/фреймворки не имеют значения, в конечном счете все такие волны сводятся к простой схеме:

  1. Берем плоскость
  2. На плоскость накладываем какую-нибудь красивую текстуру
  3. Добавляем вершин побольше
  4. В вершинном шейдере делаем какой-то генератор шума и используем значения из него чтобы двигать вершины туда-сюда в направлении, перпендикулярном плоскости
  5. Опционально там же рассчитываем нормали для освещения
  6. Играемся с коэффициентами до посинения, пока результат не начнет нравиться


Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
politon
@politon
HTML5,CSS3,JS,PHP,SQL,API,canvas,animation...
Я бы сделал с wave shader
Как основу, можешь взять https://github.com/rarietta/WebGL
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы