Блог
WebGLдизайнfrontendperformance

WebGL градиент как у Stripe — без Three.js

Зачем вообще WebGL

Статичный CSS-градиент на лендинге быстро надоедает. У Stripe и у ряда продуктовых сайтов фон «дышит» — мягкое движение цвета создаёт ощущение глубины без перегруза интерфейса. Three.js — мощный инструмент, но для одного полноэкранного пятна света это часто избыточно: лишний вес бандла, сцена, камера, цикл рендера там, где достаточно одного fullscreen quad.

Мы пошли путём «голого» WebGL: один <canvas>, вершинный и фрагментный шейдеры, requestAnimationFrame. Никакой сцены — только прямоугольник на весь viewport и время u_time в uniform для анимации.

Минимальная архитектура

На вершинном шейдере мы выводим clip-space quad; на фрагментном — считаем цвет в UV-координатах. Типичный приём — смешивание нескольких слоёв шума или синусоид от нормализованных координат с низкой частотой, чтобы получить крупные пятна, а не «зерно». Параметры (скорость, насыщенность, контраст) выносим в константы или uniforms, чтобы дизайнер мог подкрутить настройки без переписывания логики.

Важно ограничить pixel ratio: на Retina devicePixelRatio может быть 2–3; если рендерить в полном разрешении без нужды, вы сожжёте батарею на ноутбуках. Мы используем Math.min(devicePixelRatio, 2) и ресайз при изменении окна.

Доступность и UX

Красивый фон не должен мешать читать текст. Мы держим фон ниже по контрасту, чем типографика, и проверяем читаемость в светлой/тёмной теме. Для пользователей с prefers-reduced-motion отключаем анимацию времени и показываем статичный кадр — это делается одной проверкой в JS перед инкрементом u_time.

Итог

Такой градиент — это не магия, а дисциплина: простой пайплайн, осознанный бюджет по пикселям и уважение к motion preferences. На маркетинговом лендинге это даёт «премиальный» вид без тяжёлого стека 3D.

Нужен такой же визуал на вашем сайте? Забронируйте стратегический разбор — обсудим, как вписать эффект в ваш бренд и метрики.

Сергей Шпонька

Сергей Шпонька

Founder & Performance Strategist

Основатель TenetLab. 4+ года в performance-маркетинге для европейского бизнеса. Строю системы роста, которые окупаются.

Похожие статьи

Следующие шаги

Читать далее

Бесплатное продвижение бизнеса: 10 рабочих способов

Углубитесь в тему — подборка по вашим интересам

Читать