Three.js 3D rendering library for javascript #gamedev #game-engine #rendering #javascript

Mr.doob 2f2e5f7318 Merge pull request #14014 from Dawars/patch-1 il y a 7 ans
.github ba4489ded6 r92 il y a 7 ans
build ba4489ded6 r92 il y a 7 ans
docs 9b7e901438 Merge pull request #13888 from WestLangley/dev-texture_update_matrix il y a 7 ans
editor 67f9ae2736 SVGLoader: Basic fill color support. il y a 7 ans
examples a2a744c891 Fixing improper aspect ratio on window resize il y a 7 ans
src ba4489ded6 r92 il y a 7 ans
test 4f0855cba9 Tests: Changed "npm start" to "npm run dev-test" il y a 7 ans
utils cec942e2f0 Merge pull request #13119 from pjoe/blender-bake-keyframe-anims il y a 7 ans
.gitattributes 5446f535d1 git should handle the line endings il y a 7 ans
.gitignore cda9337371 Add test/unit/three.*.unit.js to .gitignore il y a 7 ans
.npmignore 4524767663 Npmignore: Add .DS_Store file, fix #13345 il y a 7 ans
.travis.yml 3f191c3999 Travis CI il y a 7 ans
LICENSE 5498e9ec31 Update LICENSE il y a 7 ans
README.md e1f9e8541a README: Added Travis badge il y a 7 ans
bower.json d271add4e8 Added bower.json back. See #10431 il y a 8 ans
package.json ba4489ded6 r92 il y a 7 ans
rollup.config.js 5b16c70cb6 Updated Rollup to ^0.55.1 il y a 7 ans

README.md

three.js

Latest NPM release License Dependencies Dev Dependencies Build Status

JavaScript 3D library

The aim of the project is to create an easy to use, lightweight, 3D library. The library provides <canvas>, <svg>, CSS3D and WebGL renderers.

ExamplesDocumentationWikiMigratingQuestionsForumGitterSlack

Usage

Download the minified library and include it in your HTML, or install and import it as a module, Alternatively see how to build the library yourself.

<script src="js/three.min.js"></script>

This 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.

var camera, scene, renderer;
var geometry, material, mesh;

init();
animate();

function init() {

	camera = new THREE.PerspectiveCamera( 70, window.innerWidth / window.innerHeight, 0.01, 10 );
	camera.position.z = 1;

	scene = new THREE.Scene();

	geometry = new THREE.BoxGeometry( 0.2, 0.2, 0.2 );
	material = new THREE.MeshNormalMaterial();

	mesh = new THREE.Mesh( geometry, material );
	scene.add( mesh );

	renderer = new THREE.WebGLRenderer( { antialias: true } );
	renderer.setSize( window.innerWidth, window.innerHeight );
	document.body.appendChild( renderer.domElement );

}

function animate() {

	requestAnimationFrame( animate );

	mesh.rotation.x += 0.01;
	mesh.rotation.y += 0.02;

	renderer.render( scene, camera );

}

If everything went well you should see this.

Change log

releases