mrdoob / three.js
Get started
From the repository's own files at d9e7d62d1f7f. Commands have not been executed.
Prerequisites
npm (root lockfile; version not captured)from package-lock.json
Commands
package.json| Task | Run | What it runs |
|---|---|---|
| dev | npm run dev | node utils/build/dev.js && node utils/server.js -p 8080 |
| start | npm run start | npm run dev |
| build | npm run build | rollup -c utils/build/rollup.config.js |
| test | npm run test | npm run lint && npm run test-unit && npm run test-unit-addons |
| lint | npm run lint | npm run lint-core |
Install and use
README.mdThis code creates a scene, a camera, and a geometric cube, and it adds the cube to the scene. It then creates a WebGL renderer for the scene and camera, and it adds that viewport to the document.body element. Finally, it animates the cube within the scene for the camera.
import * as THREE from 'three';
const width = window.innerWidth, height = window.innerHeight;
// init
const camera = new THREE.PerspectiveCamera( 70, width / height, 0.01, 10 );
camera.position.z = 1;
const scene = new THREE.Scene();
const geometry = new THREE.BoxGeometry( 0.2, 0.2, 0.2 );
const material = new THREE.MeshNormalMaterial();
const mesh = new THREE.Mesh( geometry, material );
scene.add( mesh );
const renderer = new THREE.WebGLRenderer( { antialias: true } );
renderer.setSize( width, height );
renderer.setAnimationLoop( animate );
document.body.appendChild( renderer.domElement );
// animation
function animate( time ) {
mesh.rotation.x = time / 2000;
mesh.rotation.y = time / 1000;
renderer.render( scene, camera );
}
If everything goes well, you should see this.
The contributor guide does not describe building or testing. Read .github/CONTRIBUTING.md