Book Image

Learning Three.js: The JavaScript 3D Library for WebGL

By : Jos Dirksen
Book Image

Learning Three.js: The JavaScript 3D Library for WebGL

By: Jos Dirksen

Overview of this book

<p>Three.js is a JavaScript 3D library that offers a wide range of features for creating and displaying stunning 3D computer graphics on a web browser in an intuitive manner using JavaScript without having to deal with the complexity of a WebGL low-level API. Even though WebGL makes it possible to create 3D graphics in the browser without having to use plugins, programming WebGL, however, is hard and complex. This book shows you how Three.js allows you to be independent of browser plugins.</p> <p>If you are an experienced web designer who wants to set the tone for an immersive design environment in your applications then this book is for you.<br /><br />"Learning Three.js: The JavaScript 3D Library for WebGL" is a practical, example-rich book that will help you to master all the features of Three.js. With this book, you’ll learn how to create and animate gorgeous looking 3D scenes directly in your browser utilizing the full potential of WebGL and modern browsers without having to learn WebGL.<br /><br />"Learning Three.js: The JavaScript 3D Library for WebGL" starts by going over the basic concepts and building blocks used in Three.js. From there on, it will expand on these subjects using extensive examples and code samples. This will allow you to learn everything you need to know about Three.js in an easy and interactive manner.</p> <p>Besides the basic concepts, this book will show you how you can create realistic looking 3D objects using materials and textures as well as how to load them from externally created models. You’ll learn how to easily control the camera using the Three.js build-in camera controls so you can fly or walk around the 3D scene you have created. You will also learn how to use morph and bones-based animation and how to add physics to your scene.</p> <p>After reading Learning Three.js: The JavaScript 3D Library for WebGL and playing around with the extensive set of examples, you’ll know everything that is required to create 3D animating graphics using Three.js that run in any browser.</p>
Table of Contents (20 chapters)
Learning Three.js: The JavaScript 3D Library for WebGL
Credits
About the Author
Acknowledgement
About the Reviewers
www.PacktPub.com
Preface
8
Creating and Loading Advanced Meshes and Geometries
Index

Requirements for using Three.js


Three.js is a JavaScript library, so all that you need to create Three.js WebGL applications is a text editor and one of the supported browsers to render the results. I do like to recommend three JavaScript editors, which I've started using exclusively over the last couple of years:

  • WebStorm: This editor from the JetBrains guides has great support for editing JavaScript. It supports code completion, automatic deployment, and JavaScript debugging directly from the editor. Besides this, WebStorm has excellent Git support (and other Version Control Systems). You can download a trial edition from http://www.jetbrains.com/webstorm/

  • Notepad++: This is a general purpose editor that supports a wide range of programming languages. It can easily lay out and format JavaScript.

    Note

    Notepad++ is only for Windows.

  • Sublime Text Editor: This is a great little editor that has very good support for editing JavaScript. Besides this, it provides many very helpful selection and edit options, which once you get used to, provide a real good JavaScript editing environment. Sublime Text Editor can also be tested for free and can be downloaded from http://www.sublimetext.com/

Even if you don't use these three editors there are a lot of editors available, open source and commercial, which you can use to edit JavaScript and create your Three.js projects. An interesting project that you might want to look into is http://c9.io. This is a cloud-based JavaScript editor that can be connected to a GitHub account. This way you can directly access all the source code and examples from this book, and experiment with them.

I had mentioned that most modern web browsers support WebGL and can be used to run the Three.js examples. I usually run my code in Chrome. The reason is that, most often, Chrome has the best support and performance for WebGL and it has a really great JavaScript debugger. With this debugger you can quickly pinpoint problems, for instance, by using breakpoints and console output. Throughout this book I'll give you pointers on debugger usage and other debugging tips and tricks.

That's enough of an introduction for now; let's get the source code and start with the first scene.