몇 분 안에 React와 Three.js를 사용하는 방법 ⏳
8759 단어 reacttutorialjavascriptwebdev
이 섹션에서는 다음을 수행합니다.
시작하기 전에
계속 진행하기 전에 다음을 설치 또는 구성해야 하며 사용에 대한 최소한의 기본 사항을 알고 있어야 합니다.
create-react-app의 이전 사용반응 앱 만들기
npx create-react-app cra-threejs
npm run start
그러면 React 앱이 표시됩니다
종속성 설치
three.js 패키지 설치npm i three
Three.js용 React 구성 요소 만들기
Three.js.Three.js 파일three.js 가져오기useEffect를 사용하여 three.js 구성 요소three.js 문서에 나와 있는 것처럼 본문 문서가 아니라 우리가 만들고 있는 구성 요소에 three.js 구성 요소를 마운트하기를 원하기 때문에 useRef를 사용하고 있습니다.import * as THREE from 'three';
import { useEffect, useRef } from "react";
function MyThree() {
const refContainer = useRef(null);
useEffect(() => {
// === THREE.JS CODE START ===
var scene = new THREE.Scene();
var camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000);
var renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
// document.body.appendChild( renderer.domElement );
// use ref as a mount point of the Three.js scene instead of the document.body
refContainer.current && refContainer.current.appendChild( renderer.domElement );
var geometry = new THREE.BoxGeometry(1, 1, 1);
var material = new THREE.MeshBasicMaterial({ color: 0x00ff00 });
var cube = new THREE.Mesh(geometry, material);
scene.add(cube);
camera.position.z = 5;
var animate = function () {
requestAnimationFrame(animate);
cube.rotation.x += 0.01;
cube.rotation.y += 0.01;
renderer.render(scene, camera);
};
animate();
}, []);
return (
<div ref={refContainer}></div>
);
}
export default MyThree
Three.js로 React 컴포넌트 가져오기/사용
import Three from './Three';
<Three />

자원
Link 작업 예제
Create React App
읽어 주셔서 감사합니다
Reference
이 문제에 관하여(몇 분 안에 React와 Three.js를 사용하는 방법 ⏳), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/omher/how-to-start-using-react-and-threejs-in-a-few-minutes-2h6g텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)