Learn to effortlessly leverage the power of the GPU in a 3D game or application using Babylon.js v5.0 from start to finish

Key Features

  • Explore browser-based, editable, interactive Playground samples
  • Create GPU-based resources using the Node Material Editor – no shader code required
  • Extended topics in each chapter as well as a dedicated chapter that helps you explore and contribute back to OSS projects

Book Description

Babylon.js allows anyone to effortlessly create and render 3D content in a web browser using the power of WebGL and JavaScript. 3D games and apps accessible via the web open numerous opportunities for both entertainment and profit. Developers working with Babylon.js will be able to put their knowledge to work with this guide to building a fully featured 3D game.

The book provides a hands-on approach to implementation and associated methodologies that will have you up and running, and productive in no time. Complete with step-by-step explanations of essential concepts, practical examples, and links to fully working self-contained code snippets, you’ll start by learning about Babylon.js and the finished Space-Truckers game. You’ll also explore the development workflows involved in making the game. Focusing on a wide range of features in Babylon.js, you’ll iteratively add pieces of functionality and assets to the application being built. Once you’ve built out the basic game mechanics, you’ll learn how to bring the Space-Truckers environment to life with cut scenes, particle systems, animations, shadows, PBR materials, and more.

By the end of this book, you’ll have learned how to structure your code, organize your workflow processes, and continuously deploy to a static website/PWA a game limited only by bandwidth and your imagination.

What you will learn

  • Use Babylon.js v5.0 to build an extensible open-source 3D game accessible with a web browser
  • Design and integrate compelling and performant 3D interactive scenes with a web-based application
  • Write WebGL/WebGPU shader code using the Node Material Editor
  • Separate code concerns to make the best use of the available resources
  • Use the Babylon.js Playground to tightly iterate application implementation
  • Convert a web application into a Progressive Web Application (PWA)
  • Create rich, native-ready graphical user interfaces (GUIs) using the GUI Editor

Who this book is for

This book on 3D programming in JavaScript is for those who have some familiarity with JavaScript programming and/or 3D game engine development and are looking to learn how to incorporate beautiful interactive 3D scenes into their work. Developers familiar with Unity, Unreal Engine, or three.js will also find this book to be a key resource for learning the ins and outs of Babylon.js.

Table of Contents

  1. Going the Distance with Babylon.js
  2. Foreword
  3. Contributors
  4. About the author
  5. About the reviewers
  6. Preface
  7. Part 1: Building the Application
  8. Chapter 1: The Space-Truckers Operation Manual
  9. Chapter 2: Ramping up on Babylon.js
  10. Chapter 3: Establishing the Development Workflow
  11. Chapter 4: Creating the Application
  12. Chapter 5: Adding a Cut Scene and Handling Input
  13. Part 2: Constructing the Game
  14. Chapter 6: Implementing the Game Mechanics
  15. Chapter 7: Processing Route Data
  16. Chapter 8: Building the Driving Game
  17. Chapter 9: Calculating and Displaying Scoring Results
  18. Chapter 10: Improving the Environment with Lighting and Materials
  19. Part 3: Going the Distance
  20. Chapter 11: Scratching the Surface of Shaders
  21. Chapter 12: Measuring and Optimizing Performance
  22. Chapter 13: Converting the Application to a PWA
  23. Chapter 14: Extended Topics, Extended
  24. Index
  25. Other Books You May Enjoy