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

Mr.doob 902d8bb3af Added raycast() method to Object3D. 11 years ago
build aef8e636e9 Updated builds. 11 years ago
docs b0dbff42d2 Add methods .merge and .makegroups 11 years ago
editor 457c5408e1 Editor: Added SkeletonHelpers. 11 years ago
examples 09ba6f6983 More clean up. 11 years ago
src 902d8bb3af Added raycast() method to Object3D. 11 years ago
test 9582770323 Merge branch 'vector-methods' of https://github.com/twhittock/three.js into dev 11 years ago
utils 0f3c3abc87 Fixed closure compiler error. 11 years ago
.gitignore 6536ce7052 gitignore node_modules 11 years ago
CONTRIBUTING.md 4f903eab24 CONTRIBUTING: Smaller font size for message. 11 years ago
LICENSE 4857e75774 Update LICENSE 11 years ago
README.md 8d27161fba Rewording of demo-code narrative. 11 years ago
bower.json fa4e4ae77f Updated bower. 11 years ago

README.md

three.js

JavaScript 3D library

The aim of the project is to create a lightweight 3D library with a very low level of complexity — in other words, for dummies. The library provides <canvas>, <svg>, CSS3D and WebGL renderers.

ExamplesDocumentationMigratingHelp

Usage

Download the minified library and include it in your html. 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 <canvas> 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.

<script>

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

	init();
	animate();

	function init() {

		scene = new THREE.Scene();
		
		camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 1, 10000 );
		camera.position.z = 1000;

		geometry = new THREE.BoxGeometry( 200, 200, 200 );
		material = new THREE.MeshBasicMaterial( { color: 0xff0000, wireframe: true } );
		mesh = new THREE.Mesh( geometry, material );
		
		scene.add( mesh );

		renderer = new THREE.CanvasRenderer();
		renderer.setSize( window.innerWidth, window.innerHeight );

		document.body.appendChild( renderer.domElement );

	}

	function animate() {

		// note: three.js includes requestAnimationFrame shim
		requestAnimationFrame( animate );

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

		renderer.render( scene, camera );

	}

</script>

If everything went well you should see this.

Change log

releases