Перейти к содержимому

Этот эффект наведения кажется невозможным — GSAP × Canvas 👀

HankTheTank

0:00 / 0:00

Этот эффект наведения кажется невозможным — GSAP × Canvas 👀

5 316 просмотров · 1 месяц назад
HankTheTank
6,36 тыс. подписчиков
5 316 просмотров · 1 месяц назад
Большинство сайтов имитируют это с помощью CSS-масок. На самом деле, это одно число на квадрат, анимированное в случайном порядке — и всё это умещается в 100 строк. Я разобрал сайт агентства Framer, чтобы выяснить, как на самом деле работает их эффект раскрытия пикселей, а затем перестроил его с нуля с помощью GSAP и API Canvas. Никаких библиотек, кроме GSAP. Никаких шейдеров. Никаких зависимостей. В конце вы поймете: → Почему видео никогда не отображается на странице и почему существует ДВА холста → 9-аргументный метод drawImage, который никто толком не объясняет → Как «случайное» смещение в GSAP заменяет 20 строк кода перемешивания → Исправление размытия на Retina-дисплеях с помощью devicePixelRatio + setTransform → object-fit: cover, написанный вручную (у холста его нет) → quickTo для следования курсора, который не снижает частоту кадров Секрет, который заставляет всё понять: GSAP анимирует не только элементы DOM. Он анимирует любое число на любом объекте JavaScript. В этом весь эффект. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 🔗 Живая демоверсия https://dimaac.com/projects/pixel-canvas 💻 Исходный код (бесплатно, MIT) https://github.com/Hank-D-Tank/pixel-... ✨ Оригинал ВДОХНОВЕНИЕ https://loop-agency.framer.website/ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 🛠 СТЕК GSAP 3.12 · Canvas 2D API · Чистый JavaScript · Отсутствие этапов сборки Опубликуйте свою версию в комментариях — мне интересно посмотреть, что вы в неё вставили. #gsap #creativecoding #webdev #javascript #canvas #frontend #awwwards #webdesign #uianimation #framer