Chapter 1, Setting Up OpenGL, In this chapter, you'll get to learn how to set up OpenGL using various libraries: GLFW, GLEW, SDL, and SFML. We'll learn how to set up our OpenGL projects on Windows and Mac. We also discuss how to link the libraries to your projects using absolute or relative linking, and eventually create the rendering windows to display OpenGL graphics.
Chapter 2, Drawing Shapes and Applying Textures, takes you through drawing various shapes using shaders. We'll begin by drawing a triangle and learn to add color to it. Then, we'll use the triangle concept to draw our quadrilateral and also learn how to add texture to it.
Chapter 3, Transformations, Projections, and Camera, This chapter further builds on the previous chapter. You'll get to grips with applying transformations such as rotation and translation to our shapes, and learn to draw a cube and apply a texture to it. Then, we explore the concepts of projections (perspective and orthographic) and implement those concepts in our game world.
Chapter 4, Effects of lighting, Materials, and Lightmaps, In this chapter we'll learn to apply colors to our objects and how to create a light source such as a lamp in our game world. We'll then look at the effects of light on the objects. You'll understand different types of lighting techniques: ambient, diffused, specular lighting. We'll also explore the various real worl materials and observe the effects of light on the materials. You'll also get to learn about lightmaps in this chapter.
Chapter 5, Types of light sources and combining of lights, This chapter will discuss the different types of light sources such as directional lights, point lights, and spotlights. We'll also learn to combine the lighting effects and the light sources for our game world.
Chapter 6, Implementing a Skybox Using a Cubemap, In this chapter, you'll generate a skybox using a cubemap. You'll learn how to apply textures to the skybox and then create a separate texture file to make loading of textures in the code easier. You'll also learn to draw the skybox and create our game world using it.
Online Chapter, Model Loading, This is a bonus chapter available at https://www.packtpub.com/sites/default/files/downloads/ModelLoading.pdf. In this chapter, you'll learn how to setup Assimp (Open Asset Import Library) on Windows using CMake for all our Model Loading needs. We'll also cover setting up Assimp on Mac OS X and creating a cross-platform Mesh Class. Then we'll explore how to load a 3D model into our game. You'll also get to learn how to create a Model Class to handle loading of our model.