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...

Adding a score and a message


Now we know enough about strings, SFML Text, and SFML Font to go about implementing the HUD.

The next thing we need to do is to add another #include directive to the top of the code file. As we have learned, the sstream class adds some really useful functionality for combining strings, and other variable types, together into a string.

Add the following line of highlighted code:

#include "stdafx.h" 
#include <sstream> 
#include <SFML/Graphics.hpp> 
 
using namespace sf; 
 
int main() 
{ 

Next we will set up our SFML Text objects. One will hold a message that we will vary to suit the state of the game, and the other will hold the score and needs to be regularly updated.

The next code that declares the Text and Font objects loads the font, assigns the font to the Text objects, and then adds the string messages, color, and size. This should look familiar from our discussion in the previous section. In addition, we add...