WebGPU: графический ускоритель стал доступен из вкладки браузера
Новый API пришёл на смену WebGL во всех крупных браузерах. Впервые в вебе доступны вычислительные шейдеры, и локальные нейросети в браузере перестали быть демонстрацией.
Что изменилось
WebGL появился в 2011 году и был по сути OpenGL ES, переложенным в JavaScript. У него было два ограничения, которые с годами стали критичными: он знал только о графике и не умел ничего считать на видеокарте, кроме пикселей, а его модель состояния родом из девяностых плохо ложилась на современные драйверы.
WebGPU спроектирован заново поверх Vulkan, Metal и Direct3D 12. Главная новинка для разработчиков, далёких от 3D, называется compute shaders: произвольные программы, которые выполняются на тысячах ядер видеокарты параллельно.
Где это уже работает
Chrome включил WebGPU по умолчанию в 2023 году, Firefox и Safari догнали позже. На осень 2026 года API доступен во всех основных браузерах на десктопе и в большинстве мобильных. Поддержка Linux в Chrome долго оставалась за флагом, но и это позади.
Проверить доступность просто:
if (!navigator.gpu) {
console.log("WebGPU недоступен");
}
const adapter = await navigator.gpu.requestAdapter();
const device = await adapter.requestDevice();
Что на этом строят
- Нейросети в браузере. Transformers.js и ONNX Runtime Web запускают модели для распознавания речи, перевода и генерации текста прямо на устройстве пользователя. Без WebGPU это было в десятки раз медленнее.
- Редакторы и САПР. Figma, Photoshop для веба и инструменты для 3D-моделирования переносят рендеринг на новый API ради производительности и предсказуемости.
- Игры. Движки Unity и Godot экспортируют в WebGPU, и разница с WebGL заметна на сложных сценах.
- Визуализация данных. Миллионы точек на карте или графике рендерятся без заметных задержек.
Язык шейдеров
Шейдеры пишутся на WGSL, новом языке, похожем на Rust по синтаксису. Это раздражает тех, кто привык к GLSL, но у решения есть причина: WGSL проверяется браузером до передачи драйверу, и класс ошибок с падением всей вкладки ушёл в прошлое.
Ограничения
API низкоуровневый: простой треугольник требует сотни строк кода. Для прикладных задач стоит брать библиотеку, Three.js и Babylon.js уже умеют работать поверх WebGPU. Доступ к видеокарте означает новые способы снятия цифрового отпечатка, и браузеры пока ищут баланс между возможностями и приватностью.
Почему это важно
Веб долго оставался платформой, на которой нельзя было всерьёз считать. WebGPU закрывает этот разрыв, и локальный ИИ в браузере без отправки данных на сервер превращается из эксперимента в обычную функцию сайта.
Войти, чтобы оценить материал
Комментарии
Войти, чтобы оставить комментарий