Обновлено: 2026-06-10
React Three Fiber — это React-рендерер для Three.js. Он позволяет описывать 3D-сцены декларативно, как обычные React-компоненты.
<Canvas>.<mesh>, <ambientLight>, <pointLight> и т.д. соответствуют объектам Three.js."use client";
import { Canvas } from "@react-three/fiber";
import { useRef } from "react";
import { useFrame } from "@react-three/fiber";
function RotatingBox() {
const meshRef = useRef();
useFrame((_, delta) => {
meshRef.current.rotation.x += delta;
meshRef.current.rotation.y += delta * 0.5;
});
return (
<mesh ref={meshRef}>
<boxGeometry args={[1, 1, 1]} />
<meshStandardMaterial color="orange" />
</mesh>
);
}
export default function Scene() {
return (
<Canvas>
<ambientLight intensity={0.5} />
<pointLight position={[10, 10, 10]} />
<RotatingBox />
</Canvas>
);
}
"use client" в компоненты с Canvas.ssr: false при рендере Canvas на странице.