Коллекция готовых React-компонентов и хуков для создания 3D-сцен с react-three-fiber.
pmndrs/react-three-fiber
React-рендерер для Three.js, позволяющий декларативно собирать 3D-сцены с помощью JSX-компонентов.
- Звёзды
- 33,534
- Форки
- 2,080
- Открытые issues
- 15
- Последний коммит
- 17 дней назад
Что это?
react-three-fiber (@react-three/fiber) — это React-рендерер для Three.js. Вместо того чтобы императивно создавать меши, материалы и источники света, вы описываете их в виде JSX-элементов, например <mesh /> или <ambientLight />, каждый из которых соответствует объекту Three.js. Компоненты могут хранить собственное состояние React, обрабатывать события указателя и подписываться на цикл рендеринга с помощью хуков вроде useFrame.
Поскольку рендеринг происходит за пределами дерева компонентов React, проект утверждает, что по сравнению с обычным Three.js библиотека не создаёт дополнительной нагрузки. Любой класс или функция Three.js доступна в виде JSX-элемента, поэтому для новых релизов Three.js не требуется менять саму библиотеку. Также доступны пакеты для React Native. Библиотека рассчитана на использование с соответствующей мажорной версией React (v8 для React 18, v9 для React 19).
Экосистема @react-three предлагает дополнительные инструменты: например, drei, постобработку, физические движки (Rapier, Cannon), поддержку XR и тестовый рендерер для Node.
Ключевые возможности
- 01Описывайте сцены Three.js с помощью JSX-элементов, напрямую соответствующих объектам Three.js.
- 02Используйте состояние React и обработчики событий, например onClick и onPointerOver, для 3D-объектов.
- 03Запускайте логику для каждого кадра внутри цикла рендеринга с помощью хука useFrame.
- 04Получайте доступ к любым функциям Three.js, не дожидаясь обновлений библиотеки.
- 05Поддерживается React Native через отдельную точку входа.
Сценарии использования
- Создание интерактивных 3D-конфигураторов товаров или визуализаций данных в приложении на React.
- Создание переиспользуемых компонентов 3D-интерфейса с собственным состоянием и анимациями.
- Добавление 3D-сцен в мобильное приложение на React Native.
- Написание в Node модульных тестов для компонентов 3D-сцен с помощью тестового рендерера.
Быстрый старт
- 1
Установите пакеты с помощью npm
npm install three @types/three @react-three/fiber - 2
Создайте Canvas и отрисуйте сцену с помощью компонентов JSX (см. пример в README)
Что важно знать
- Версия react-three-fiber должна соответствовать основной версии React: v8 работает с react@18, а v9 — с react@19.
Темы
Частые вопросы
- Что такое react-three-fiber?
- React-рендерер для Three.js, позволяющий декларативно собирать 3D-сцены с помощью JSX-компонентов. react-three-fiber (@react-three/fiber) — это React-рендерер для Three.js. Вместо того чтобы императивно создавать меши, материалы и источники света, вы описываете их в виде JSX-элементов, например <mesh /> или <ambientLight />, каждый из которых соответствует объекту Three.js. Компоненты могут хранить собственное состояние React, обрабатывать события указателя и подписываться на цикл рендеринга с помощью хуков вроде useFrame.
- react-three-fiber можно использовать бесплатно? Какая у него лицензия?
- react-three-fiber распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- react-three-fiber всё ещё поддерживается?
- Активно поддерживается. Последний коммит в react-three-fiber — 21 окт. 2026 г..
- Для чего можно использовать react-three-fiber?
- Создание интерактивных 3D-конфигураторов товаров или визуализаций данных в приложении на React. Создание переиспользуемых компонентов 3D-интерфейса с собственным состоянием и анимациями. Добавление 3D-сцен в мобильное приложение на React Native. Написание в Node модульных тестов для компонентов 3D-сцен с помощью тестового рендерера.
- Как установить react-three-fiber?
- Установите пакеты с помощью npm: npm install three @types/three @react-three/fiber Создайте Canvas и отрисуйте сцену с помощью компонентов JSX (см. пример в README)
- Где скачать react-three-fiber?
- Исходный код и инструкции по установке — на GitHub: https://github.com/pmndrs/react-three-fiber
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Обёртка для React над библиотекой postprocessing, которая позволяет декларативно добавлять эффекты постобработки в сцены react-three-fiber с помощью JSX-компонентов.
JavaScript-инструментарий и фреймворк на базе Three.js для интерактивной визуализации данных в 3D/WebGL и 2D в браузере.
Библиотека управления камерой для three.js с плавными переходами и расширенными возможностями орбитального управления в стиле OrbitControls.
Браузерная студия превизуализации для расстановки объектов в сцене, позирования персонажей и монтажа движений камеры с последующей передачей кадров AI-моделям для генерации видео.
Интерактивный 3D-справочник по 63 видам насекомых: модели создаются процедурно в браузере с помощью TypeScript и Three.js, без файлов моделей.