-
Notifications
You must be signed in to change notification settings - Fork 3
Basic Tutorial Introduction
Tutorial Introduction: This is where you should first start when learning Ogre. This tutorial series will explain the core elements of an Ogre scene starting from the very basics. The only requirement is an understanding of writing and compiling c++ programs. A basic knowledge of mathematics will also be very helpful, but is not necessary.
Every tutorial will begin with an introduction and a screenshot to demonstrate the final product. Each tutorial will also provide links to the completed source code.
Before you can begin this tutorial series, you have to set up a basic Ogre project. If you need help with this, then you can read Setting Up An Application.
For this tutorial we are only interested in getting a render window open. Download this tutorial source code with git by copy and pasting the entire command below into your terminal.
cd ~/Downloads &&
git clone https://github.com/sushillouis/381 &&
cp -r 381/tutorials/intro . &&
rm -rf 381
Then you should see a folder containing the following files in your downloads
intro/BaseApplication.h
intro/TutorialApplication.h
intro/BaseApplication.cpp
intro/TutorialApplication.cpp
intro/resources.cfg
Build and run your application with these new files included. If using CMake be sure to follow the steps here to create a CMakeLists.txt file and a build directory! You should see the overlay displaying information about the rendering statistics. If you're still having trouble, then refer to the Troubleshooting section of Setting Up An Application.

When the tutorial shifts to a new method it will always be mentioned explicitly. For example, you will see: "Add the following to the beginning of createScene:" If a new code section is reached and nothing has been mentioned, then you can assume the code continues exactly where the last section left off. If you spot any cases where this isn't true, then please leave a comment or make the change yourself.
During these tutorials, when a block of code (i.e. something between brackets { }) is broken up over more than one code section, a ^ will be used as a reminder that the code is continuing an unfinished block. This should not be included in your project. It is soley for formatting.
An example:
if (skyIsBlue)
{
sunshineOnMyFace = true;
Later...
^ if (seeThunderCloud)
{
takeCover();
}
}
These should be read as one single if statement.