Game Development with Three.js

More Information
  • Set up a Three.js scene representing a game world
  • Understand the types of Three.js components, including geometries, materials, lighting, cameras, and renderers
  • Interact with your games using the mouse and keyboard
  • Structure your worlds with various approaches to physical collision
  • Construct complex levels using several different methods
  • Extend the Three.js framework with custom game-specific classes
  • Gain insight into development processes and important design and performance considerations for web games
  • Achieve a basic understanding of multiplayer game networking

The advent of WebGL and its inclusion in many browsers enabled JavaScript programs running in a web browser to access the GPU without a plugin or extension. Three.js is a next generation high-level library that makes it possible to author complex 3D computer animations that display in the browser using nothing more than a simple text editor. The development of these new tools has opened up the world of real-time 3D computer animations to a far broader spectrum of developers.

Starting with how to build 3D games on the web using the Three.js graphics library, you will learn how to build 3D worlds with meshes, lighting, user interaction, physics, and more. Along the way, you’ll learn how to build great online games through fun examples. Use this book as a guide to embrace the next generation of game development!

Moving on from the basics, you will learn how to use Three.js to build game worlds using its core components, including renderers, geometries, materials, lighting, cameras, and scenes. Following on from this, you will learn how to work with mouse and keyboard interactions, incorporate game physics, and import custom models and animations. You will also learn how to include effects like particles, sounds, and post-processing. You will start by building a 3D world, and then create a first person shooter game using it. You will then be shown how to imbue this FPS game with a “capture the flag” gameplay objective. With Game Development with Three.js, you will be able to build 3D games on the Web using the Three.js graphics library.

  • Develop immersive 3D games that anyone can play on the Internet
  • Learn Three.js from a gaming perspective, including everything you need to build beautiful and high-performance worlds
  • A step-by-step guide filled with game-focused examples and tips
Page Count 118
Course Length 3 hours 32 minutes
ISBN 9781782168539
Date Of Publication 23 Oct 2013


Isaac Sukin

Isaac Sukin has been building games since he was eight years old, when he discovered that Nerf Arena Blast came with a copy of Epic Games' Unreal Editor. At 16, he became co-leader of the Community Bonus Pack team, an international group of game developers for the Unreal Engine that won 49 awards over the next few years. He started learning to code around the same time by developing an open source Facebook-style statuses system that thousands of websites have adopted. Since then, he has been increasingly drawn to interactive JavaScript on the web. He created an open source 2D game engine in early 2012 and then dove into Three.js. As of 2013, he is a senior, studying entrepreneurship and information management at the Wharton school at the University of Pennsylvania. He has worked for Twitter, First Round Capital, and Acquia among others, and was previously a freelance consultant and developer. He is also a founder of Dorm Room Fund, a student-run venture capital fund that invests in student-run startups. You can find him on GitHub and Twitter under the alias IceCreamYou or visit his website at He has previously published short stories and poetry, but this is his first book.