OGRE 3D 1.7 Beginner's Guide


OGRE 3D 1.7 Beginner's Guide
eBook: $26.99
Formats: PDF, PacktLib, ePub and Mobi formats
$21.59
save 20%!
Print + free eBook + free PacktLib access to the book: $71.98    Print cover: $44.99
$44.99
save 37%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Overview
Table of Contents
Author
Support
Sample Chapters
  • Easy-to-follow introduction to OGRE 3D
  • Create exciting 3D applications using OGRE 3D
  • Create your own scenes and monsters, play with the lights and shadows, and learn to use plugins
  • Get challenged to be creative and make fun and addictive games on your own
  • A hands-on do-it-yourself approach with over 100 examples

Images

Book Details

Language : English
Paperback : 300 pages [ 235mm x 191mm ]
Release Date : November 2010
ISBN : 1849512485
ISBN 13 : 9781849512480
Author(s) : Felix Kerger
Topics and Technologies : All Books, Game Development, Beginner's Guides, Open Source


Table of Contents

Preface
Chapter 1: Installing Ogre 3D
Chapter 2: The Ogre Scene Graph
Chapter 3: Camera, Light, and Shadow
Chapter 4: Getting User Input and Using the Frame Listener
Chapter 5: Animating models with Ogre 3D
Chapter 6: Scene Managers
Chapter 7: Materials with Ogre 3D
Chapter 8: The Compositor Framework
Chapter 9: The Ogre 3D Startup Sequence
Chapter 10: Particle Systems and Extending Ogre 3D
Appendix: Pop Quiz Answers
Index
  • Chapter 1: Installing Ogre 3D
    • Downloading and installing Ogre 3D
    • Time for action – downloading and installing Ogre 3D
      • Different versions of the Ogre 3D SDK
      • Exploring the SDK
    • The Ogre 3D samples
    • Time for action – building the Ogre 3D samples
    • The first application with Ogre 3D
    • Time for action – starting the project and configuring the IDE
      • ExampleApplication
    • Loading the first model
    • Time for action – loading a model
    • Summary
  • Chapter 2: The Ogre Scene Graph
    • Creating a scene node
    • Time for action – creating a scene node with Ogre 3D
      • How to work with the RootSceneNode
      • 3D space
      • Scene graph
    • Setting the position of a scene node
    • Time for action – setting the position of a scene node
    • Rotating a scene node
    • Time for action – rotating a scene node
    • Scaling a scene node
    • Time for action – scaling a scene node
    • Using a scene graph the clever way
    • Time for action – building a tree using scene nodes
    • Have a go hero – adding a following ninja
    • Different spaces in a scene
    • Time for action – translating in World space
      • Different spaces in a 3D scene
    • Translating in local space
    • Time for action – translating in local and parent space
    • Rotating in different spaces
    • Time for action – rotating in different spaces
    • Scaling in different spaces
    • Summary
  • Chapter 3: Camera, Light, and Shadow
    • Creating a plane
    • Time for action – creating a plane
      • Representing models in 3D
    • Adding a point light
    • Time for action – adding a point light
    • Adding a spotlight
    • Time for action – creating a spotlight
      • Spotlights
    • Directional lights
    • Time for action – creating a directional light
    • The missing thing
    • Time for action – finding out what's missing
    • Adding shadows
    • Time for action – adding shadows
    • Creating a camera
    • Time for action – creating a camera
    • Creating a viewport
    • Time for action – doing something that illustrates the thing "in action"
    • Summary
  • Chapter 4: Getting User Input and Using the Frame Listener
    • Preparing a scene
    • Time for action – preparing a scene
    • Adding movement to the scene
    • Time for action – adding movement to the scene
      • FrameListener
    • Modifying the code to be time based rather than frame based
    • Time for action – adding time-based movement
    • Adding input support
    • Time for action – adding input support
      • Window handle
    • Adding movement to the model
    • Time for action – controlling Sinbad
    • Adding a camera
    • Time for action – making the camera work again
      • Mouse state
    • Adding wireframe and point render mode
    • Time for action – adding wireframe and point render mode
    • Adding a timer
    • Time for action – adding a timer
    • Summary
  • Chapter 5: Animating models with Ogre 3D
    • Adding animations
    • Time for action – adding animations
    • Playing two animations at the same time
    • Time for action – adding a second animation
    • Let's walk a bit
    • Time for action – combining user control and animation
    • Adding swords
    • Time for action – adding swords
      • Animations
    • Printing all the animations a model has
    • Time for action – printing all animations
    • Summary
  • Chapter 6: Scene Managers
    • Starting with a blank sheet
    • Time for action – creating a blank sheet
    • Getting the scene manager's type
    • Time for action – printing the scene manager's type
      • What does a scene manger do?
      • Octree
    • Another scene manager type
    • Time for action – using another scene manager
      • ResourceManager
      • setWorldGeometry
    • Creating our own model
    • Time for action – creating a model for displaying blades of grass
      • Manual object
      • Texture mapping
    • Adding volume to the blades of grass
    • Time for action – using more triangles for volume
    • Creating a field of grass
    • Time for action – building a field of grass
    • Exploring the name scheme
    • Time for action – printing the names
    • Static geometry
    • Time for action – using static geometry
      • Rendering pipeline
      • Indices
    • Summary
  • Chapter 7: Materials with Ogre 3D
    • Creating a white quad
    • Time for action – creating the quad
    • Creating our own material
    • Time for action – creating a material
      • Materials
    • Texture coordinates take two
    • Time for action – preparing our quad
    • Using the wrapping mode with another texture
    • Time for action – adding a rock texture
    • Using another texture mode
    • Time for action – adding a rock texture
    • Using the mirror mode
    • Time for action – using the mirror mode
    • Using the border mode
    • Time for action – using the border mode
    • Changing the border color
    • Time for action – changing the border color
    • Scrolling a texture
    • Time for action – preparing to scroll a texture
    • Time for action – scrolling a texture
    • Animated scrolling
    • Time for action – adding animated scrolling
    • Inheriting materials
    • Time for action – inheriting from a material
    • Fixed Function Pipeline and shaders
      • Render Pipeline
    • Time for action – our first shader application
      • Writing a shader
    • Texturing with shaders
    • Time for action – using textures in shaders
      • What happens in the render pipeline?
    • Interpolating color values
    • Time for action – using colors to see interpolation
    • Replacing the quad with a model
    • Time for action – replacing the quad with a model
    • Making the model pulse on the x-axis
    • Time for action – adding a pulse
    • Summary
  • Chapter 8: The Compositor Framework
    • Preparing a scene
    • Time for action – preparing the scene
    • Adding the first compositor
    • Time for action – adding a compositor
      • How the compositor works
    • Modifying the texture
    • Time for action – modifying the texture
    • Inverting the image
    • Time for action – inverting the image
    • Combining compositors
    • Time for action – combining two compositor effects
    • Decreasing the texture count
    • Time for action – decreasing the texture count
    • Combining compositors in code
    • Time for action – combing two compositors in code
    • Something more complex
    • Time for action – complex compositor
    • Changing the number of pixels
    • Time for action – putting the number of pixels in the material
    • Setting the variable in code
    • Time for action – setting the variable from the application
    • Changing the number of pixels while running the application
    • Time for action – modifying the number of pixels with user input
    • Adding a split screen
    • Time for action – adding a split screen
    • Putting it all together
    • Time for action – selecting a color channel
    • Summary
  • Chapter 9: The Ogre 3D Startup Sequence
    • Starting Ogre 3D
    • Time for action – starting Ogre 3D
    • Adding resources
    • Time for action – loading the Sinbad mesh
    • Using resources.cfg
    • Time for action – using resources.cfg to load our models
      • Structure of a configuration file
    • Creating an application class
    • Time for action – creating a class
    • Adding a FrameListener
    • Time for action – adding a FrameListener
    • Investigating the FrameListener functionality
    • Time for action – experimenting with the FrameListener implementation
    • Time for action – returning true in the frameStarted function
      • Double buffering
    • Time for action – returning true in the frameRenderingQueued function
    • Time for action – returning true in the frameEnded function
    • Adding input
    • Time for action – adding input
    • Our own main loop
    • Time for action – using our own rendering loop
    • Adding a camera (again)
    • Time for action – adding a frame listener
    • Adding compositors
    • Time for action – adding compositors
    • Adding a plane
    • Time for action – adding a plane and a light
    • Adding user control
    • Time for action – controlling the model with the arrow keys
    • Adding animation
    • Time for action – adding animation
    • Summary
  • Chapter 10: Particle Systems and Extending Ogre 3D
    • Adding a particle system
    • Time for action – adding a particle system
      • What is a particle system?
    • Creating a simple particle system
    • Time for action – creating a particle system
    • Some more parameters
    • Time for action – some new parameters
    • Other parameters
    • Time for action – time to live and color range
    • Turning it on and off again
    • Time for action – adding intervals to a particle system
    • Adding affectors
    • Time for action – adding a scaler affector
    • Changing colors
    • Time for action – changing the color
    • Two-way changing
    • Time for action – change depending on the lifetime of a particle
    • Even more complex color manipulations
    • Time for action – using complex color manipulation
    • Adding randomness
    • Time for action – adding randomness
    • Deflector
    • Time for action – using the deflector plane
    • Other emitter types
    • Time for action – using a box emitter
    • Emitting with a ring
    • Time for action – using a ring to emit particles
    • At the end, we would like some fireworks
    • Time for action – adding fireworks
    • Extending Ogre 3D
      • Speedtree
      • Hydrax
      • Caelum
      • Particle Universe
      • GUIs
      • CEGUI
      • BetaGUI
      • QuickGUI
      • Berkelium
    • Summary
    • The end
  • Appendix: Pop Quiz Answers
    • Chapter 1
      • Installing Ogre 3D
    • Chapter 2
      • Setting up the Environment
    • Chapter 3
      • Felix Gogo
    • Chapter 4
      • Felix Gogo
    • Chapter 5
      • The Book Inventory Bundle
    • Chapter 7
    • The Bookshelf: First Stab
    • Chapter 9
      • The Ogre 3D Startup Sequence
    • Chapter 10
      • How About a Graphical Interface?

Felix Kerger

Felix Kerger is a Computer Science Student at the Technical University of Darmstadt and has been developing 3D real-time applications using OGRE 3D for more than 5 years. He has given several talks on software development and 3D real-time applications at different conferences and has been working for three years as an assistant researcher at the Fraunhofer Institute for Computer Graphics Research. He also works as a freelance journalist and reports yearly from the Game Developer Conference Europe.

Sorry, we don't have any reviews for this title yet.

Code Downloads

Download the code and support files for this book.


Submit Errata

Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.


Errata

- 5 submitted: last submission 12 Apr 2013

Errata type: Code | Page numbers: 64

Remove the setShadowTechnique() function should be Remove setPolygonMode() function

 

Errata type: Code | Page number: 73

FrameListener should be ExampleFrameListener

 

Errata type: Typo | Page number: 71

At point 6, the constructor and destructor functions must be called Example25FrameListener() and ~Example25FrameListener() respectively.

Errata type: Graphics | Page number: 44 | Errata received on 5-08-2012

 

There are two images on this page each containing 3 figures (sinbad)
In the first image ,the sinbad on the right (third) has incorrect axes.

The correct axes are:

X pointing upwards

Y pointing towards the reader (out of the page)

Z pointing to right (this one is correctly printed on the book)

Errata type: Grammar | Page number: 71 | Errata received on 20-10-2012

Step 5 is:

Add a new member variable to hold the pointer to the FrameListener, which we
will create later:
Ogre::FrameListener* FrameListener;

 

Step 5 should be changed to:

Add a new member variable to the ExampleApplication class to hold the pointer to the FrameListener, which we will create later:
           Ogre::FrameListener* FrameListener;

 

Sample chapters

You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

Frequently bought together

OGRE 3D 1.7 Beginner's Guide +    Clojure Data Analysis Cookbook =
50% Off
the second eBook
Price for both: A$41.55

Buy both these recommended eBooks together and get 50% off the cheapest eBook.

What you will learn from this book

  • Learn the basics of OGRE 3D
  • Understand the scene graph
  • Develop 3D scenes with OGRE 3D
  • Create complex scenes
  • Write your own shaders and add them to scenes
  • Add lights and shadows
  • Add compositors to 3D scene for post-processing effects
  • Learn more about user control and animation
  • Extend OGRE 3D with plugins

In Detail

Want to make your own 3D applications, simulations, and games?

OGRE 3D, an open source Object-Oriented 3D Graphics Rendering Engine written in C++, which can be utilized to create a variety of 3D applications and is commonly used in game creation, can help you to do so!

OGRE 3D 1.7 Beginner's Guide, based on the latest version 1.7, makes it super easy for you to make your own monsters, spaceship shooters, weapons, enemies, and more!

OGRE 3D 1.7 Beginner's Guide will teach you to develop 3D applications that are exciting and interesting and if used correctly can result in stunning games and simulations. You will start from the very beginning and then work your way up to complex scenes and stunning effects.

In this book you will start with how to download and configure OGRE 3D, then create your first example scene. With the help of this sample scene, you will be introduced to several related topics each of which will be explained through several other examples and by do-it-yourself tasks.

After each example there is a section that explains the theory behind the technique used for deeper understanding. You will also use what you learned in one example in another example and repeat each technique several times while learning new ones at the same time to strengthen the topics learned. Within no time you will master the art of game creation. Imagine how great you will feel when all your friends are playing the great-looking games you've created with OGRE 3D and this book.

A step-by-step guide for beginners, filled with examples and simple do-it-yourself exercises

Approach

This book is an example-driven introduction to OGRE 3D. Each example shows some new features and you learn step-by-step to create complex scenes with different effects using OGRE 3D. After several examples discussing one topic there is a do-it-yourself part where you will be challenged to solve problems on your own.

Who this book is for

If you have ever wanted to develop 3D applications with OGRE 3D, this example-driven book will enable you to do so. Understanding of C++ is needed to follow the examples in the book.

Code Download and Errata
Packt Anytime, Anywhere
Register Books
Print Upgrades
eBook Downloads
Video Support
Contact Us
Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Resources
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software