Create stunning 3D graphics in your browser using the Three.js JavaScript library
About This Book
- Enhance your 3D graphics with light sources, shadows, advanced materials, and textures
- Load models from external sources, and visualize and animate them directly from JavaScript
- Each subject is explained using extensive examples that you can use directly and adapt for your own purposes
Who This Book Is For
If you know JavaScript and want to start creating 3D graphics that run in any browser, this book is a great choice for you. You don't need to know anything about math or WebGL; all that you need is general knowledge of JavaScript and HTML.
What You Will Learn
- Use the different geometries that are provided by Three.js
- Apply realistic lighting and shadows to the 3D objects you have created
- Use the different camera controls provided by Three.js to effortlessly navigate around your 3D scene
- Make use of advanced textures on materials to create realistic-looking 3D objects by using bump maps, normal maps, specular maps, and light maps
- Import and animate models from external formats, such as OBJ, STL, Collada, and many more
- Create and run animations using morph targets and bone animations
- Explore the Physijs JavaScript library to apply physics to your 3D objects
- Interact directly with WebGL by creating custom vertex and fragment shaders
In Detail
Modern browsers support WebGL, which makes it possible to create 3D graphics in a browser without having to use plugins such as Flash and Java. Programming WebGL, however, is difficult, complex, and very difficult to debug. With Three.js, it is possible to create stunning 3D graphics in an intuitive manner using JavaScript, without the need to know the details of WebGL.
Learning Three.js – the JavaScript 3D Library for WebGL, Second Edition, is a practical, example-rich book that will help you learn about all the features of Three.js. This book will show you how to create or load models from externally created models and realistic-looking 3D objects using materials and textures. You'll also learn how to use the HTML5 video and canvas elements as a material for your 3D objects, different ways of animating your models, skeleton-based animation, and how to add physics such as gravity and collision detection to your scene. By the end of the book, you'll know everything that is required to create 3D animated graphics that run in any browser using Three.js.