Introduction


Hi. My name is Robert Hodgin, and I am the author of this tutorial (with helpful input from Andrew Bell and Mike Creighton). I want to help others get started with Cinder because learning a new framework can be intimidating. Over five chapters, I will show you how to go from a brand new Cinder project to a particle engine with both local and global forces, and then use it to achieve some artistic effects. Along the way, I will point out a few of Cinder's features as well as explaining a bit about my personal coding practices. If you wish to see what you will be working towards, check the final video at the end of Chapter 5. However, if you prefer the mystery of not knowing, read on.

Things are going to be pretty informal. Think of this as a quick-start guide. Instead of exhaustively covering a topic before moving on to the next, I am going to meander around a bit and sample some of Cinder's many features along the way. Hopefully, this tutorial will inspire you to continue to explore Cinder and learn to love it as much as I do.

Below you will find some brief chapter descriptions. Each chapter has a corresponding project, which you can find in the cinder/tour directory.

tutorial_tour_location_shot.png


Chapter 1: Getting Started
In the first chapter, we will set up a new project and learn how to load and display images. We go on to show how to draw simple shapes and we even set up a basic Particle engine.

Chapter 2: Personality and diversity
We continue to expand our Particle engine. We also learn how to pull color data from images and put that information to good use.

Chapter 3: Influence
In chapter 3, we show how to use keyboard and mouse input to control our Particle engine.

Chapter 4: Fine tuning
A birth/death cycle is added to our Particle class and Perlin noise is introduced.

Chapter 5: External Forces
We show you how to use nested iterators to allow the Particles to interact with each other. We then tie everything together and marvel at how far we have come.


Okay, enough with the introduction. Let's dive right in.