Что это
A-Frame — open-source JavaScript-фреймворк для создания VR, AR и 3D-сцен прямо в браузере. Работает поверх Three.js, но прячет его сложность за HTML-тегами: пишешь <a-scene>, <a-box>, <a-sphere> — и сцена уже крутится. Под капотом — сущностно-компонентная архитектура (entity-component system), та же идея, что в Unity. Никакого GLSL, никакого WebGL-бойлерплейта, никакой сборки — достаточно подключить один скрипт с CDN. Родился в Mozilla VR в 2015 году, сейчас поддерживается командой Supermedium и Google. Актуальная версия — 1.7.0 (февраль 2025), в ней появились пост-обработка и поддержка WebGPU.
Почему это важно
A-Frame — это WebXR без боли. Там, где нативный WebXR API требует разбираться в сессиях, референс-спейсах и рендер-циклах, A-Frame даёт работающую VR-сцену за пять строк HTML. Поддерживает Meta Quest, Apple Vision Pro, PICO, Valve Index и просто десктопный браузер — один URL открывается везде. Именно это делает его инструментом для публичных виртуальных пространств: никаких клиентов, никаких установок, просто ссылка. Альтернатива — Babylon.js: мощнее, взрослее, но порог входа выше и логика другая.
Моя точка входа
Попал в A-Frame весной 2025, когда делал эксперимент с WebXR: хотел запустить 360-галерею в браузере — для воздушных панорамных фото и потенциально виртуальных экспозиций. Идея простая: VRChat требует клиент, а веб-галерея открывается по ссылке. Потратил вечер + кусок ночи, порядка 200 запросов в Cursor, сравнивал с Babylon.js — и что-то даже получилось. A-Frame оказался проще для быстрого прототипа, хотя для серьёзного интерактива Babylon может взять верх.
Источники
- A-Frame — Official Homepage — 2025-02-20
- Introduction — A-Frame Docs 1.7.0 — 2025-02-20
- aframevr/aframe — GitHub — 2025-02-20
- A-Frame (software) — Wikipedia — 2025-07-01