Features

Three.js includes the following features:

  • Renderers: WebGL, <canvas>, <svg>, CSS3D, DOM, Software; effects: anaglyph, crosseyed, stereo and more
  • Scenes: add and remove objects at run-time; fog
  • Cameras: perspective and orthographic; controllers: trackball, FPS, path and more
  • Animation: morph and keyframe
  • Lights: ambient, direction, point, spot and hemisphere lights; shadows: cast and receive
  • Materials: Lambert, Phong and more - all with textures, smooth-shading and more
  • Shaders: access to full WebGL capabilities; lens flare, depth pass and extensive post-processing library
  • Objects: meshes, particles, sprites, lines, ribbons, bones and more - all with level of detail
  • Geometry: plane, cube, sphere, torus, 3D text and more; modifiers: lathe, extrude and tube
  • Loaders: binary, image, JSON and scene
  • Utilities: full set of time and 3D math functions including frustum, quaternion, matrix, UVs and more
  • Export/Import: utilities to create Three.js-compatible JSON files from within: Blender, CTM, FBX, 3D Max, and OBJ
  • Support: API documentation is under construction, public forum and wiki in full operation
  • Examples: More than 150 files of coding examples plus fonts, models, textures, sounds and other support files

Three.js runs in all browsers supported by WebGL. See WebGL Implementation.

Three.js is made available under the MIT license.