Book Image

Beginning C++ Game Programming

Book Image

Beginning C++ Game Programming

Overview of this book

This book is all about offering you a fun introduction to the world of game programming, C++, and the OpenGL-powered SFML using three fun, fully-playable games. These games are an addictive frantic two-button tapper, a multi-level zombie survival shooter, and a split-screen multiplayer puzzle-platformer. We will start with the very basics of programming, such as variables, loops, and conditions and you will become more skillful with each game as you move through the key C++ topics, such as OOP (Object-Orientated Programming), C++ pointers, and an introduction to the Standard Template Library. While building these games, you will also learn exciting game programming concepts like particle effects, directional sound (spatialization), OpenGL programmable Shaders, spawning thousands of objects, and more.
Table of Contents (24 chapters)
Beginning C++ Game Programming
Credits
About the Author
About the Reviewer
www.PacktPub.com
Dedication
Preface
17
Before you go...

Using the TextureHolder class for all textures


Since we have our TextureHolder class, we might as well be consistent and use it to load all our textures. Let's make some very small alterations to the existing code that loads textures for the background sprite sheet and the player.

Change the way the background gets its textures

In the ZombieArena.cpp file, find this code:

// Load the texture for our background vertex array 
Texture textureBackground;
textureBackground.loadFromFile("graphics/background_sheet.png");

Delete the code highlighted previously and replace it with the following highlighted code, which uses our new TextureHolder class:

// Load the texture for our background vertex array 
Texture textureBackground = TextureHolder::GetTexture(
  "graphics/background_sheet.png");

Change the way Player gets its texture

In the Player.cpp file, inside the constructor, find this code:

#include "stdafx.h" 
#include "player.h" 
 
Player::Player() 
{ 
...