Matter.js는 2D 물리 엔진으로. 웹에서 움직이는 물체(예: 공, 상자 등)의 충돌, 중력, 마찰, 반동 등을 현실처럼 동작해주는 자바스크립트 라이브러리이다.
npm install matter-js
import Matter from 'matter-js';
const MatterCanvas: React.FC = () => {
const sceneRef = useRef<HTMLDivElement>(null);
.........
React.FC
는 함수형 컴포넌트를 의미하는 Typescript이다.
const Engine = Matter.Engine;
const Render = Matter.Render;
const Runner = Matter.Runner;
const Bodies = Matter.Bodies;
const Composite = Matter.Composite;
Engine
: 물리 계산을 담당하는 엔진Render
: 캔버스를 생성하고 렌더링Runner
: 엔진 업데이트 루프Bodies
: 물체(바디)를 생성