What you need for this book
This book is centered on a Windows-based PC. An Android smartphone or tablet is advisable due to the limitations of the emulator in 3D graphics and native audio.
Note
The source code in this book is based on open-source Linderdaum Engine and is a hard squeezing of some approaches and techniques used in the engine. You can get at http://www.linderdaum.com.
Basic knowledge of C or C++, including pointer manipulation, multithreading, and basic object-oriented programming concepts is assumed. The reader should be familiar with advanced programming concepts such as threading and synchronization primitives, and have some basic understanding of GCC toolchains. We also hope the reader is not afraid to develop without an IDE (yes, developing without an autocomplete-capable IDE definitely IS a skill) from a terminal/FarManager/Notepad/SublimeText, for example.
Android Java development is not covered in this book. You will have to read something else to get familiar with it.
Some working knowledge of linear algebra and affine transformations in 3D space is useful for the understanding of OpenGL programming and gesture recognition.