Free Sample
+ Collection

Irrlicht 1.7 Realtime 3D Engine Beginner's Guide

Beginner's Guide
Johannes Stein, Aung Sithu Kyaw

With your C++ skills and our writers’ know-how, you’re well on your way to using the Irrlicht Engine for your 2D and 3D applications. No prior knowledge of Irrlicht needed – this book goes from installation to deployment.
$26.99
$44.99
RRP $26.99
RRP $44.99
eBook
Print + eBook

Want this title & more?

$21.99 p/month

Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Book Details

ISBN 139781849513982
Paperback272 pages

About This Book

  • A comprehensive guide for C++ programmers to learn Irrlicht from scratch
  • Learn to add, manipulate, and animate meshes
  • Manage scenes, nodes, and cameras
  • Use particle systems, shaders, and lights for enhancement
  • Written in beginner's guide style with exhaustive explanations of code and plenty of screenshots added in for ease of learning

Who This Book Is For

If you have C++ skills and are interested in learning Irrlicht, this book is for you. Absolutely no knowledge of Irrlicht is necessary for you to follow this book!

Table of Contents

Chapter 1: Installing Irrlicht
Irrlicht license
System requirements
Time for action - downloading Irrlicht
Contents of the Irrlicht package
Irrlicht on Windows with Visual Studio
Time for action - adding file references
Compiling Irrlicht as a dynamic library using Visual Studio
Time for action - compiling Irrlicht as a dynamic library
Time for action - compiling the Irrlicht dynamic library with modifications
Building an example with Visual Studio
Time for action - building an Irrlicht example
Using Irrlicht with CodeBlocks
Time for action - creating an application using the CodeBlocks wizard
Irrlicht on Linux
Time for action - compiling the static library
Making Irrlicht available on the whole system
Time for action - compiling "Hello World" on Ubuntu
Irrlicht on Mac OS X with Xcode
Time for action - compiling the static library on Mac OS X
Time for action - compiling "Hello World" project with Xcode
Summary
Chapter 2: Creating a Basic Template Application
Creating a new empty project
Time for action - creating the main entry point
Using Irrlicht namespaces
Irrlicht device
Time for action - creating an Irrlicht device
The "game loop"
Time for action - creating the "game loop"
Summary
Chapter 3: Loading Meshes
What is a mesh?
Time for action - loading a mesh
Using textures
Time for action - applying texture to a mesh
Time for action - manipulating our mesh
Time for action - animating our mesh
Summary
Chapter 4: Overlays and User Interface
What is an overlay?
Time for action - drawing a 2D image
Using a sprite sheet
Time for action - using a sprite sheet
Making sprite sheets
Time for action - making sprite sheets
Drawing primitives
Time for action - drawing primitives
Graphical user interface
Displaying text on the screen
Time for action - displaying text on the screen
Using the Irrlicht font tool
Time for action - using the Irrlicht font tool
Adding buttons to our GUI
Time for action - adding buttons to your GUI
Summary
Chapter 5: Understanding Data Types
Using C++ templates
Time for action - using templates
Type definitions
Class types
Vectors
Time for action - moving a ball
Summary
Chapter 6: Managing Scenes
What is a scene?
Getting CopperCube/IrrEditCopp
What is CopperCube?
Why are we using CopperCube?
Time for action - creating a new scene
Time for action - adding meshes to our scene
Time for action - adding lights
Time for action - adding geometrical objects
Time for action - finishing up our scene
Time for action - exporting our scene
Time for action - loading an Irrlicht scene
Summary
Chapter 7: Using Nodes The Basic Objects of the Irrlicht 3D Engine
What is a node?
Overview of different nodes
Working with nodes
Time for action - working with nodes
Animating nodes
Time for action - animating nodes
Adding a custom scene node
Time for action - adding a custom scene node
Summary
Chapter 8: Managing Cameras
What is a camera?
Extending our template application
Time for action - extending our template application
Creating terrains
Time for action - creating terrains
Adding a camera scene node
Time for action - adding a camera scene node
Adding prefabricated cameras
Time for action - adding prefabricated cameras
Summary
Chapter 9: Lightening the Scene
Using irrEdit to set up lights
Time for action - creating a global ambient light
Time for action - adding a light scene node
Time for action - setting up Irrlicht
Time for action - setting up global ambient light
Time for action - creating a custom light node
Time for action - adding a spot light and an animator
Time for action - manipulating shininess and specular light color
Time for action - adding a shadow
Summary
Chapter 10: Creating Eye Candy Effects with Particle Systems
Particle systems
Time for action - creating a simple particle effect in irrEdit
Time for action - modifying the particle material
Time for action - adding a particle system in Irrlicht
Time for action - adding a simple water surface
Time for action - adding a particle affector
Time for action - activating a particle effect on a mouse event
Summary
Chapter 11: Handling Data and Files
Loading data from an external file
Time for action - loading data from an external file
Time for action - reading data in tokens, line-by-line
Time for action - saving data to a file
Time for action - loading data from an XML file
Time for action - writing data to an XML file
Time for action - reading specific data types from an XML file
Time for action - reading data from an archive
Summary
Chapter 12: Using Shaders in Irrlicht
Rendering pipeline
Shaders
Vertex shaders
Fragment /pixel shaders
Geometry shaders
Time for action - setting up the GLSL demo
Data communication
Time for action - using a toon shader
Time for action - applying a gooch shader
Going further with shaders
Summary

What You Will Learn

  • Set up Irrlicht on different platforms
  • Create your very first empty application using different platforms and IDEs
  • Apply textures to meshes, load, and access them
  • Add and manipulate images
  • Change the graphical layout of the user interface
  • Learn about data types to access objects in a 3D space and facilitate the workflow
  • Manipulate and manage scenes
  • Set up a custom node and animate it using Node Animator
  • Learn how to move the camera
  • Add prefabricated and custom cameras
  • Add, manage, and manipulate lights
  • Create eye-candy effects with particle systems
  • Handle data and files with Irrlicht
  • Implement shaders for complex effects
  • Deploy your application

In Detail

The Irrlicht Engine is a cross-platform high-performance real-time 3D engine written in C++. It features a powerful high-level API for creating complete 3D and 2D applications such as games or scientific visualizations.

Irrlicht 1.7 Realtime 3D Engine Beginner's Guide will teach you to master all that is required to create 2D and 3D applications using Irrlicht, beginning right from installation and proceeding step-by-step to deployment.

Beginning with installation, this book guides you through creating a basic template application, followed by meshes, overlays, and UI. You will then scan through data types, nodes, scenes, camera, lights, and particle systems. Finally, you will learn about some advanced concepts such as handling data, files, and shaders, followed by the last stage – deployment.

Authors

Read More

Recommended for You