Mastering-Cpp-Game-Development - Code files for Mastering C++ Game Development, published by Packt


Mastering C++ Game Development

This is the code repository for Mastering C++ Game Development, published by Packt. It contains all the supporting project files necessary to work through the book from start to finish.

About the Book

Although many languages are now being used to develop games, C++ remains the standard for professional development. The majority of professional libraries and toolchains are still built using C++. The primary goal of this book is to teach you how to harness the power of the language and provide you with the ability to build high-quality games.

To begin, you will be presented with, an overview of popular development methodologies, and a short guide to updated features of the C++ 17 standard. You will learn how to leverage existing libraries such as OpenGL and the STL (standard library) to build complex systems. Throughout the journey, you will also build a set of C++ 17 compatible libraries that can be reused in your own development projects. In the last half of the book, you will work with demos designed to introduce you to advanced rendering techniques, interactive physics, advanced AI techniques, and even multiplayer game concerns with modern networks.

By the end of the book, you will have a good understanding of the structure of modern high-end games and have the tools to create them.

Instructions and Navigations

All of the code is organized into folders. Each folder starts with a number followed by the application name. For example, Chapter02.

The code will look like the following:

#include <BookEngine/IGame.h>
#include "App.h"

int main(int argc, char** argv)
	App app;

	return 0;

Software and Hardware Requirements

To get the most out of the examples and development experience, it is recommended you to have a relatively newer development device with at least the following things:

  • CPU: 4 cores
  • Memory: 8 GB RAM
  • Disk space: 40 GB

The examples (with a few exceptions) have been designed to run on both macOS and Windows PC devices. To follow along you should have the following software installed:

  • PC: Visual Studio 2015 Community or better
  • macOS: XCode 8.x or better. Other software needed will be described as required.

Related Products

Providing books, eBooks, video tutorials, and articles for IT developers, administrators, and users.
A reliable and easy to use CPP program header file for simplifying, code writing in cpp

CPP Custom Header This header file main purpose is to implement most famous and most used algorithm that are easy to implement but quite lengthy and t

Jitesh Kumar 1 Dec 22, 2021
Homework repo of Modern Cpp for CV (2020Spring) at UniBonn

Modern C++ Course For CV (2020) source file can be found here. Homework Assignments Homework # Title Homework sheet Files and Data MyStatus Homework_1

Yujie He 23 Mar 11, 2022
cpp fundamentals and questions for beginners and intermediates

DSA 60 days Hi people! So we have started grasping dsa concepts and solving problems from 12 July. And we shall continue till September 10 Starting fr

Sushree Satarupa 196 Jun 20, 2022
An CPP Adaptation of esHTML. For better porpuses.

Keepy Keepy is a pseudo-language / HTML preprocessor that translates special syntax into HTML with the peculiarity of being a "compiled pseudo-languag

Alex 1 Jan 1, 2022
Cpp-semver - Semantic Versioning in C++

cpp-semver - Semantic Versioning in C++ Features header-only C++11 parses semver string inspired by Semantic Versioning and npm-semver API handling st

Cas Perl 25 Mar 12, 2022
A project uses for beginners, who wants to learn basic Cpp.

Learning Basic Cpp The basic project for who wants to learn Cpp. Notes: All the files are coded using Microsoft Visual Studio 2019. If you want to cod

null 1 Jan 28, 2022
C++ OpenGL 3D Game Tutorial Series - Learn to code an OpenGL 3D Game in C++ from scratch

C++ OpenGL 3D Game Tutorial Series is a YouTube Tutorial Series, whose purpose is to help all those who want to take their first steps in the game dev

 PardCode 88 Jun 8, 2022
Introducing to the world - Maze Game! A game with an easily accessible, user-friendly interface that will provide you the serotonin a game should!

Maze-Project Maze game by Maze™ ?? About Introducing to the world - Maze game! ⛏️ Used technologies C++ ✅ Features 3 levels of difficulty User-friendl

Yoana Agafonova 6 Jun 2, 2022
Welcome to my dungeon. Here, I keep all my configuration files in case I have a stroke and lose all my memory. You're very welcome to explore and use anything in this repository. Have fun!

Fr1nge's Dotfiles Welcome to my dungeon. Here, I keep all my configuration files in case I have a stroke an d lose all my memory. You're very welcome

Fr1nge 32 Apr 16, 2022
C++98 library that encapsulates memory-mapped-files for POSIX or Windows

Memory-Mapped File C++ Library Tutorial and Reference Purpose This is a library, for the C++98 language and its successive versions, to handle files a

Carlo Milanesi 80 Feb 10, 2022
chap analyzes un-instrumented core files for leaks, memory growth, and corruption

chap analyzes un-instrumented ELF core files for leaks, memory growth, and corruption. It is sufficiently reliable that it can be used in automation t

VMware 298 Jun 21, 2022
High performance library for creating, modiyfing and parsing PDF files in C++

Welcome to PDF-Writer. A Fast and Free C++ Library for Creating, Parsing an Manipulating PDF Files and Streams. Documentation is available here. Proje

gal kahana 642 Jun 24, 2022
Programming Language T#. Compiled language. In development.


Ibuki Yoshida 1 Feb 1, 2022
This is an active mirror of the KiCad development branch, which is hosted at GitLab

This is an active mirror of the KiCad development branch, which is hosted at GitLab (updated every time something is pushed). Pull requests on GitHub are not accepted or watched.

KiCad EDA 1.1k Jun 25, 2022
T# Programming Language. Interpreted language. In development. I will make this compilable later.


T# 91 Jun 24, 2022
C code that make nice posters

ProgrammingPosters C that that make nice posters of short C programs. This generates A2 300D DPI images of programs that implement intresting graphics

Mike Field 45 Mar 2, 2022
Code profiler based on Frida

Code Profiler Based on Frida This repository contains the code to profile LIEF functions with Frida. Get Started Make sure to download the right versi

LIEF 27 May 19, 2022
An Repositery with Ghost eShop Homebrew Source Code

Ghost-Eshop-Alternative-3DS An Alternative eShop for Nintendo 3DS This is a clone of Universal-Updater Download Requirement -Latest version available

Ghost0159 33 Jun 4, 2022
Public Code Repository of the iRotate Active SLAM for Omnidirectional robots at the Max Planck Institute for Intelligent Systems, Tübingen

iRotate: Active Visual SLAM for Omnidirectional Robots This repository contains the code of iRotate, an active V-SLAM method submitted to RA-L + IROS2

Elia Bonetto 32 May 31, 2022