Amazing 3D Animation with three.js

By  on  

The hottest topic for client-side developers seems to be animation. Whether it be from CSS transformations, keyframe animations, or animations managed with JavaScript APIs, it seems like each day we come across another demo that shows us how can we've come outside of Flash. The latest shocker comes from the three.js project. The creators of three.js explains the project best:

The aim of the project is to create a lightweight 3D engine with a very low level of complexity; in other words, for dummies. The engine can render using <canvas>, <svg> and WebGL.

The three.js engine allows developers to create mindblowing 2D and 3D animations with Canvas and WebGL, from basic cubes to advanced animations so smooth you'll wet yourself.

Favorite three.js Demos

The three.js repository comes with several dozens examples of the engine's capabilities. Here are a few of my favorites:

You can see all of the examples here: http://mrdoob.github.com/three.js/

Mind status: blown. three.js is an incredible project that allows developers to achieve amazing animations efficiently and without Flash. Mr.Doob: take a bow -- three.js is ahead of its time.

Recent Features

  • By
    CSS Animations Between Media Queries

    CSS animations are right up there with sliced bread. CSS animations are efficient because they can be hardware accelerated, they require no JavaScript overhead, and they are composed of very little CSS code. Quite often we add CSS transforms to elements via CSS during...

  • By
    JavaScript Promise API

    While synchronous code is easier to follow and debug, async is generally better for performance and flexibility. Why "hold up the show" when you can trigger numerous requests at once and then handle them when each is ready?  Promises are becoming a big part of the JavaScript world...

Incredible Demos

  • By
    MooTools onLoad SmoothScrolling

    SmoothScroll is a fantastic MooTools plugin but smooth scrolling only occurs when the anchor is on the same page. Making SmoothScroll work across pages is as easy as a few extra line of MooTools and a querystring variable. The MooTools / PHP Of course, this is a...

  • By
    Build a Slick and Simple MooTools Accordion

    Last week I covered a smooth, subtle MooTools effect called Kwicks. Another great MooTools creation is the Accordion, which acts like...wait for it...an accordion! Now I've never been a huge Weird Al fan so this is as close to playing an accordion as...

Discussion

  1. I love Three.js – it’s great fun just to play with even if you don’t have a client project to work on. One of my favourite demos using it is Anaemia by Litewerx: http://litewerx.dk/anaemia/demo/demo.html?s=maxAnaemia

    A great writeup of how all of the different parts (camera, scene, renderer, etc) fit together: http://www.12devsofxmas.co.uk/2012/01/webgl-and-three-js/

  2. Dang, I wish I was into 3d animation! Maybe I should get my brother (video game developer) to just start making browser based games… though he doesn’t really like JavaScript

  3. Alex

    There are additional examples at chromeexperiments.com that are DOPE!
    Make sure you check the tags of each example to find out if the experiment is using the three.js library!

  4. I was looking in to three.js a few weeks back and found this amazing example of a 3D F1 car which you can even drive around the screen using your keyboard.

    http://helloracer.com/webgl/

  5. It looks like api for three.js and Away3D are structured similarly… Anyone seen a scripted fallback to Away3D so you could code once and deploy to support the broadest audience?

  6. Terrain Dynamic – 3 minutes in, and Chrome went “Oh, Snap. Something went wrong” :)
    I very much enjoyed it though!

  7. I love three.js and I’ve been using it quite a bit to show my 3D models.

    you can check them out here:

    http://www.benbathen.com

    Best viewed in Firefox or Chrome IE and Safari don’t fully support WebGL.

  8. Loved the demos. I really loved what developers of the hobbit did with exploring the map of middle earth.

    http://middle-earth.thehobbit.com/

  9. Fisnik

    hello I would love to download the code for this project for education purpose can anyone provide me that? Thanks in before
    http://mrdoob.github.com/three.js/examples/webgl_shading_physical.html

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!