Repolode
pmndrs

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. 1

    Установите пакеты с помощью npm

    npm install three @types/three @react-three/fiber
  2. 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-компонентов.

1,5 тыс.+9 за неделю151TypeScriptMITАктивно поддерживаетсяОбновлён 17 дней назад

Библиотека управления камерой для three.js с плавными переходами и расширенными возможностями орбитального управления в стиле OrbitControls.

2,4 тыс.+4 за неделю300TypeScriptMITОбновлён 18 дней назад

Браузерная студия превизуализации для расстановки объектов в сцене, позирования персонажей и монтажа движений камеры с последующей передачей кадров AI-моделям для генерации видео.

1,6 тыс.+319 за неделю180JavaScriptAGPL-3.0Активно поддерживаетсяОбновлён 22 часа назад