Matter.js : 소개를 시작합니다
설치
기본 예
Matter.js를 배우는 가장 좋은 방법은 실제 코드를보고 작동 방식을 이해하는 것입니다. 이 섹션에서는 일부 객체를 만들고 필요한 코드를 라인별로 소개합니다.
npm install matter-js
다음 줄은 모듈의
메소드를 사용하여 새 엔진을 생성합니다. 마찬가지로, 우리는 또한 새로운 러너와 새로운 렌더러를 만들었습니다. 위 메소드의<!-- CDN链接 -->
예를 들어
후, 모듈의
메소드를 사용하여 새 렌더러를 만듭니다. 엔진 모듈과 마찬가지로 위 메소드의 설정 매개 변수는 매개 변수의 다른 옵션을 지정하기위한 객체입니다. 키를 사용하여 라이브러리가 캔버스에 삽입 해야하는 요소를 지정할 수 있습니다. 마찬가지로
키를 사용하여 Matter.js World를 렌더링 해야하는 캔버스 요소를 지정할 수도 있습니다.const Engine = Matter.Engine, Render = Matter.Render, Runner = Matter.Runner, Bodies = Matter.Bodies, Composite = Matter.Composite; const iEngine = Engine.create(); const iRunner = Runner.create(); const iRender = Render.create({ element: document.body, engine: iEngine, options: { width: 800, height: 400, wireframes: false, background: "white" } }); const boxA = Bodies.rectangle(400, 200, 80, 80); const ballA = Bodies.circle(380, 100, 40, 10); const ballB = Bodies.circle(460, 10, 40, 10); const ground = Bodies.rectangle(400, 380, 810, 60, { isStatic: true }); Composite.add(iEngine.world, [boxA, ballA, ballB, ground]); Render.run(iRender); Runner.run(iRunner, iEngine);
engine
로 설정하여 와이어 프레임을 켜거나 끌 수도 있습니다. 우리는 또한 배경의 값을 흰색으로 설정하여 세상의 캔버스 색상을 흰색으로 만듭니다. options
width
및 height
메소드 만 사용합니다. 다른 방법을 사용하여 다른 다각형을 만들 수도 있습니다. wireframe
객체를 만든 후에는 모듈의 true
메소드를 사용하여 선택한 세계에 추가해야합니다. 필요한 개체를 세상에 추가 한 후에는 각 모듈에서 false
메소드를 사용하여 러너와 렌더러를 실행하면됩니다. 이것은 기본적으로 Matter.js World에서 작성하고 렌더링하는 데 필요한 모든 코드입니다.
이 섹션의 시작 부분에있는 코드는 다음 결과를 만듭니다.
Matter.Bodies
circle()
rectangle()
이전 섹션의 예제는 렌더링, 시뮬레이션 및 객체 생성을 처리하기 위해 네 가지 모듈을 사용합니다. 이 섹션에서는 Matter.js에서 일반적으로 사용되는 일부 모듈의 역할에 대해 배우게됩니다.
-
엔진 : Matter.js World의 시뮬레이션을 업데이트하려면 엔진이 필요합니다. 모듈은 다른 엔진의 동작을 제어 할 수있는 다양한 방법과 특성을 제공합니다.
- 러너 : 당신이 시뮬레이션하는 모든 세계의 물체는 서로 끊임없이 서로 상호 작용할 것입니다. 러너 모듈은 이러한 지속적인 업데이트를 엔진과 세계에 처리합니다. 바디
- : 모듈에는 원, 사각형 또는 사다리꼴과 같은 일반적인 모양으로 강성 몸체를 만드는 데 도움이되는 다양한 방법이 포함되어 있습니다. Body :이 모듈은 모듈에서 함수를 사용하여 생성하는 강체를 생성하고 조작하기위한 다양한 방법과 속성을 제공합니다. 이 모듈을 사용하면 단일 객체를 스케일, 회전 또는 번역 할 수 있습니다. 또한 다른 물체의 속도, 밀도 또는 관성을 지정할 수있는 기능도 있습니다. 많은 기능이 있으므로이 시리즈의 세 번째 자습서는 모듈에서 사용 가능한 방법과 속성에 대해서만 설명합니다. 복합재 :
- : 모듈에는 복합 객체를 생성하고 조작 할 수있는 다양한 방법과 속성이 있습니다. 이 시리즈의 네 번째 튜토리얼에서 및
Bodies
모듈에 대한 자세한 내용을 읽을 수 있습니다.Body
제약 조건 :이 모듈을 사용하면 제약 조건을 생성하고 조작 할 수 있습니다. 제약 조건을 사용하여 두 객체 또는 고정 된 세계 우주 지점과 객체가 고정 거리로 유지되도록 할 수 있습니다. 이것은 강화를 통해 두 객체를 연결하는 것과 유사합니다. 로드가 스프링과 비슷하기 시작하여 이러한 제약 조건의 강성을 수정할 수 있습니다. Matter.js는 Newtonian 진자 또는 체인 복합체를 만들 때 제약 조건을 사용합니다. -
MouseConstraint :이 모듈은 마우스 제약 조건을 생성하고 조작 할 수있는 다양한 방법과 속성을 제공합니다. 이것은 세계의 다른 객체가 사용자와 상호 작용하기를 원할 때 유용합니다.
Bodies
최종 사고Composites
이 튜토리얼은 Matter.js 라이브러리를 소개하기위한 것입니다. 이를 염두에두고 라이브러리의 기능과 설치에 대한 빠른 개요를 제공했습니다. 두 개의 원과 사각형이 포함 된 기본 예는 라이브러리를 사용하여 간단한 시뮬레이션을 만드는 것이 얼마나 쉬운 지 보여줍니다. - 이 게시물은 Monty Shokeen의 기여로 업데이트되었습니다. Monty는 튜토리얼을 작성하고 새로운 JavaScript 라이브러리를 배우는 것을 좋아하는 풀 스택 개발자입니다.
Engine
render : 사용자가 시뮬레이션에서 볼 수있는 실제 객체를 만들려면 렌더러가 필요합니다. 엘프 등을 지원하는 기본 게임을 개발하는 데 사용할 수 있습니다. Bodies
모듈과 유사 하게이 모듈에는 공통 구성으로 복합 객체를 생성하는 데 사용할 수있는 다양한 방법이 포함되어 있습니다. 예를 들어, 모듈에서 단일 방법을 사용하여 직사각형 상자의 스택 또는 피라미드를 만들 수 있습니다.
composite 위 내용은 Matter.js : 소개를 시작합니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

JavaScript는 현대 웹 개발의 초석이며 주요 기능에는 이벤트 중심 프로그래밍, 동적 컨텐츠 생성 및 비동기 프로그래밍이 포함됩니다. 1) 이벤트 중심 프로그래밍을 사용하면 사용자 작업에 따라 웹 페이지가 동적으로 변경 될 수 있습니다. 2) 동적 컨텐츠 생성을 사용하면 조건에 따라 페이지 컨텐츠를 조정할 수 있습니다. 3) 비동기 프로그래밍은 사용자 인터페이스가 차단되지 않도록합니다. JavaScript는 웹 상호 작용, 단일 페이지 응용 프로그램 및 서버 측 개발에 널리 사용되며 사용자 경험 및 크로스 플랫폼 개발의 유연성을 크게 향상시킵니다.

JavaScript의 최신 트렌드에는 Typescript의 Rise, 현대 프레임 워크 및 라이브러리의 인기 및 WebAssembly의 적용이 포함됩니다. 향후 전망은보다 강력한 유형 시스템, 서버 측 JavaScript 개발, 인공 지능 및 기계 학습의 확장, IoT 및 Edge 컴퓨팅의 잠재력을 포함합니다.

각각의 엔진의 구현 원리 및 최적화 전략이 다르기 때문에 JavaScript 엔진은 JavaScript 코드를 구문 분석하고 실행할 때 다른 영향을 미칩니다. 1. 어휘 분석 : 소스 코드를 어휘 단위로 변환합니다. 2. 문법 분석 : 추상 구문 트리를 생성합니다. 3. 최적화 및 컴파일 : JIT 컴파일러를 통해 기계 코드를 생성합니다. 4. 실행 : 기계 코드를 실행하십시오. V8 엔진은 즉각적인 컴파일 및 숨겨진 클래스를 통해 최적화하여 Spidermonkey는 유형 추론 시스템을 사용하여 동일한 코드에서 성능이 다른 성능을 제공합니다.

JavaScript는 현대 웹 개발의 핵심 언어이며 다양성과 유연성에 널리 사용됩니다. 1) 프론트 엔드 개발 : DOM 운영 및 최신 프레임 워크 (예 : React, Vue.js, Angular)를 통해 동적 웹 페이지 및 단일 페이지 응용 프로그램을 구축합니다. 2) 서버 측 개발 : Node.js는 비 차단 I/O 모델을 사용하여 높은 동시성 및 실시간 응용 프로그램을 처리합니다. 3) 모바일 및 데스크탑 애플리케이션 개발 : 크로스 플랫폼 개발은 개발 효율을 향상시키기 위해 반응 및 전자를 통해 실현됩니다.

Python은 부드러운 학습 곡선과 간결한 구문으로 초보자에게 더 적합합니다. JavaScript는 가파른 학습 곡선과 유연한 구문으로 프론트 엔드 개발에 적합합니다. 1. Python Syntax는 직관적이며 데이터 과학 및 백엔드 개발에 적합합니다. 2. JavaScript는 유연하며 프론트 엔드 및 서버 측 프로그래밍에서 널리 사용됩니다.

이 기사에서는 Contrim에 의해 확보 된 백엔드와의 프론트 엔드 통합을 보여 주며 Next.js를 사용하여 기능적인 Edtech SaaS 응용 프로그램을 구축합니다. Frontend는 UI 가시성을 제어하기 위해 사용자 권한을 가져오고 API가 역할 기반을 준수하도록합니다.

C/C에서 JavaScript로 전환하려면 동적 타이핑, 쓰레기 수집 및 비동기 프로그래밍으로 적응해야합니다. 1) C/C는 수동 메모리 관리가 필요한 정적으로 입력 한 언어이며 JavaScript는 동적으로 입력하고 쓰레기 수집이 자동으로 처리됩니다. 2) C/C를 기계 코드로 컴파일 해야하는 반면 JavaScript는 해석 된 언어입니다. 3) JavaScript는 폐쇄, 프로토 타입 체인 및 약속과 같은 개념을 소개하여 유연성과 비동기 프로그래밍 기능을 향상시킵니다.

JavaScript는 이미 최신 브라우저에 내장되어 있기 때문에 설치가 필요하지 않습니다. 시작하려면 텍스트 편집기와 브라우저 만 있으면됩니다. 1) 브라우저 환경에서 태그를 통해 HTML 파일을 포함하여 실행하십시오. 2) Node.js 환경에서 Node.js를 다운로드하고 설치 한 후 명령 줄을 통해 JavaScript 파일을 실행하십시오.
