Песочница на Three.js и GLSL для настройки игровых эффектов способностей с прицеливанием: параметры можно менять ползунками даже на паузе.
gl-transitions/gl-transitions
Открытая коллекция из более чем 100 написанных сообществом GLSL-переходов между двумя изображениями для веба, мобильных устройств, Apple, Android, Rust и видеоредакторов.
- Звёзды
- 2,232
- Форки
- 331
- Открытые issues
- 2
- Последний коммит
- 21 час назад
Что это?
GL Transitions — это коллекция переходов с анимацией между двумя изображениями. Каждый переход — небольшая функция GLSL, написанная по общей спецификации: благодаря этому один и тот же эффект можно использовать в разных средах рендеринга без переписывания.
Коллекция преобразуется в SkSL, GLSL ES 3.00, WGSL, Metal и AGSL, поддерживая веб-страницы на WebGL, React Native Skia, Remotion, видеокомпозиции Apple, приложения для Android и рендереры на Rust. CI компилирует каждую версию и сравнивает результат рендеринга с исходным GLSL, а npm-пакет содержит таблицу совместимости для каждого перехода и целевой платформы.
Разработчики могут устанавливать исходники через npm, Swift Package Manager, Gradle или Cargo, а контрибьюторы — создавать и просматривать новые переходы в онлайн-редакторе перед отправкой pull request.
Ключевые возможности
- 01Более 100 переходов, каждый из которых представляет собой отдельную функцию GLSL с настраиваемыми параметрами.
- 02Версии для SkSL, GLSL ES 3.00, WGSL, Metal и AGSL.
- 03Пакеты для npm, Swift, Android, Rust и Remotion, а также поддержка React Native Skia.
- 04Автоматические тесты сравнивают результат рендеринга на разных платформах с исходной версией GLSL.
- 05Просмотр и редактирование переходов в реальном времени на gl-transitions.com.
Сценарии использования
- Добавление переходов типа сдвига, вытеснения или масштабирования в веб-слайдшоу на WebGL.
- Создание переходов между клипами в видеопроекте Remotion.
- Рендеринг переходов между изображениями в приложении React Native с помощью Skia.
- Создание видеопереходов в конвейере рендеринга на FFmpeg или в командной строке.
Быстрый старт
- 1
Установите npm-пакет gl-transitions
npm install gl-transitions - 2
Просмотрите переходы и оцените их предварительный просмотр на gl-transitions.com
Что важно знать
- Каждый переход — это фрагмент GLSL, поэтому хост-приложение должно предоставлять WebGL или другую среду выполнения шейдеров.
- Большинство переходов распространяется по лицензии MIT, но у каждого своя лицензия, а два из них распространяются по лицензиям BSD.
Темы
Частые вопросы
- Что такое gl-transitions?
- Открытая коллекция из более чем 100 написанных сообществом GLSL-переходов между двумя изображениями для веба, мобильных устройств, Apple, Android, Rust и видеоредакторов. GL Transitions — это коллекция переходов с анимацией между двумя изображениями. Каждый переход — небольшая функция GLSL, написанная по общей спецификации: благодаря этому один и тот же эффект можно использовать в разных средах рендеринга без переписывания.
- gl-transitions можно использовать бесплатно? Какая у него лицензия?
- gl-transitions распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- gl-transitions всё ещё поддерживается?
- Активно поддерживается. Последний коммит в gl-transitions — 6 нояб. 2026 г..
- Для чего можно использовать gl-transitions?
- Добавление переходов типа сдвига, вытеснения или масштабирования в веб-слайдшоу на WebGL. Создание переходов между клипами в видеопроекте Remotion. Рендеринг переходов между изображениями в приложении React Native с помощью Skia. Создание видеопереходов в конвейере рендеринга на FFmpeg или в командной строке.
- Как установить gl-transitions?
- Установите npm-пакет gl-transitions: npm install gl-transitions Просмотрите переходы и оцените их предварительный просмотр на gl-transitions.com
- Где скачать gl-transitions?
- Исходный код и инструкции по установке — на GitHub: https://github.com/gl-transitions/gl-transitions
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
GPU.js преобразует простые функции JavaScript в шейдерный код, чтобы выполнять их на GPU в браузерах и Node.js, а при необходимости переключается на обычный JavaScript.
Модульная библиотека шейдерных функций для GLSL, HLSL, Metal, WGSL, WebGL и CUDA: в каждом файле — одна функция для повторного использования.
Функциональная обёртка над WebGL, которая устраняет общее состояние GPU и позволяет описывать вызовы отрисовки как команды, компилируемые в оптимизированный JavaScript.
Библиотека постобработки для three.js, которая объединяет полноэкранные эффекты, такие как bloom, SSAO и цветокоррекция, для сцен WebGL.
Рендерер океана в реальном времени для three.js (WebGL2): FFT-волны, прибой у берега, пена, каустика, подводный режим и плавающие объекты.