Hands-on Three.js 3D Web Visualisations

Video description

Three.js is the most popular JavaScript library for displaying 3D content on the web, giving you the power to display incredible models, games, music videos, and scientific/data visualizations in your browser and even on your smartphone!

This course begins with a 3D beginner-level primer to 3D concepts and some basic examples to get you started with the most important features that Three.js has to offer. You'll learn how to quickly create a scene, camera, and renderer and how to add meshes using the Geometry primitives included with the library. You'll explore troubleshooting steps that will focus on some of the common pitfalls developers face. You'll learn the very sophisticated animation system included with the library. The course concludes by introducing post-processing, essentially adding filters to your rendered scene, and GLSL, the shading language that is used by all materials included with the library. You'll see how creating your materials is easier than you'd imagine using GLSL.

By the end of this course, you'll be able to quickly add advanced features to your 3D scenes, improve the way users interact with them, and make them look stunning.

What You Will Learn

  • Learn the basics of 3D applications: vertices, faces, meshes, cameras, and renderers
  • Learn how to set up a Three.js web app: the scene, camera, and renderer
  • Master the scene hierarchy and child-parent relationships, and how they affect the final location and orientation of objects
  • Explore simple mesh shapes (such as boxes, spheres, cylinders, planes, and cones) using the Three.js library
  • Learn how to source, create, and load complex assets, including textures
  • Discover how to use the brilliant animation system that is part of the THREE.js library
  • Add a post-processor to a rendered image, to make it look like an old film or a dot screenprint


If you are a JavaScript developer and want to learn how to use the Three.js library to create 3D graphics in your browser, then this course is for you!

About The Author

Nik Lever: Nik Lever started work in 1980 as a cartoon animator. Buying a Sinclair ZX81 in 1982 was the start of a migration to a role as a full-time programmer. The ZX81 was quickly swapped for the Sinclair Spectrum; a Z80 processor and a massive 48K of RAM made this a much better computer on which to develop games and he developed games using Sinclair Basic and then Z80 Assembler. The Spectrum was swapped for a Commodore Amiga and Nik developed more games in the shareware market, moving on to use C. At this stage, programming was essentially a hobby. Paid work was still animated TV commercials.

Nik finally bought a PC in the early nineties, created a sprite library ActiveX control, and authored his first book, aimed at getting designers into programming. In the mid-nineties along came Flash and the company he was now running, Catalyst Pictures, became known for creating games.

Since then, the majority of his working life has been devoted to creating games, first in Flash and then Director, as Director published the first widely available 3D library that would run in a browser using a plugin.

In recent years, his game development has involved using HTML5 and Canvas to create 2D and 3D games using both custom code and various libraries. His preference is to use the latest version of Adobe Flash, now called Animate, which exports to JavaScript via the Createjs library and uses the THREE.js WebGL library.

Nik has developed online content for the BBC, Johnson and Johnson, Deloitte, Mars Corporation, and many other blue-chip clients. The company he's run for over 30 years has won several awards and has been nominated for a BAFTA twice, the UK equivalent to the Oscar.

Over the last 20 years, he has been struck by just how difficult it has been to get good developers and has decided to do something about this rather than just complain. He runs a CodeClub for 9-13-year-old kids and has developed several courses for Udemy in the hope of inspiring and educating new developers.

Product information

  • Title: Hands-on Three.js 3D Web Visualisations
  • Author(s): Nik Lever
  • Release date: September 2019
  • Publisher(s): Packt Publishing
  • ISBN: 9781838989279