What you need for this book
This book assumes that you have 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 it at http://www.linderdaum.com.
Basic knowledge of C or C++, including pointer manipulation, multithreading, and basic object-oriented programming concepts is assumed. You should be familiar with advanced programming concepts such as threading and synchronization primitives, and have some basic understanding of GCC toolchains. 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 3D graphics-related chapters.