Code of the Game Programming in C++ book. Complete OpenGL 3D tutorial code and samples to use as a learning resource. Including basic shader code examples too.

#gamedev #example #cpp #opengl #engine #tutorial #c++ #library #framework #starter #glsl #shaders #gl #3d #2d

chalonverse 22372ca0a3 Update Errata.md há 2 anos atrás
Chapter01 dcb55fbf3a Explicitly set precompiled header setting in Visual Studio to "NotUsing" há 7 anos atrás
Chapter02 33cccb5ef7 docs: Fix a few typos há 4 anos atrás
Chapter03 dcb55fbf3a Explicitly set precompiled header setting in Visual Studio to "NotUsing" há 7 anos atrás
Chapter04 0bd80abaf2 added <algorithm> and <limits> includes há 3 anos atrás
Chapter05 dcb55fbf3a Explicitly set precompiled header setting in Visual Studio to "NotUsing" há 7 anos atrás
Chapter06 dcb55fbf3a Explicitly set precompiled header setting in Visual Studio to "NotUsing" há 7 anos atrás
Chapter07 33cccb5ef7 docs: Fix a few typos há 4 anos atrás
Chapter08 ddcb472c1f Fixed bug in GetButtonValue há 2 anos atrás
Chapter09 33cccb5ef7 docs: Fix a few typos há 4 anos atrás
Chapter10 33cccb5ef7 docs: Fix a few typos há 4 anos atrás
Chapter11 33cccb5ef7 docs: Fix a few typos há 4 anos atrás
Chapter12 33cccb5ef7 docs: Fix a few typos há 4 anos atrás
Chapter13 33cccb5ef7 docs: Fix a few typos há 4 anos atrás
Chapter14 33cccb5ef7 docs: Fix a few typos há 4 anos atrás
Exercises dcb55fbf3a Explicitly set precompiled header setting in Visual Studio to "NotUsing" há 7 anos atrás
Exporter 42a1c0553c rename exporter-script. delete old files há 4 anos atrás
External 1e10ad7580 Updated libSDL2 to fix Mac Mojave rendering issues há 7 anos atrás
FMODStudio 2809ff2e29 Added FMODStudio assets for Chapter 7/10 há 8 anos atrás
.gitignore 11d5aa9348 Merged LoadFont/GetFont há 8 anos atrás
Errata.md 22372ca0a3 Update Errata.md há 2 anos atrás
LICENSE 87bace1813 Update LICENSE há 8 anos atrás
README.md 75ff013dfa Update README.md há 5 anos atrás

README.md

Game Programming in C++ Code

This repository contains the source code for Game Programming in C++ by Sanjay Madhav.

The source code for the chapters is released under the BSD 3-clause license. See LICENSE for more details. Note that this license does not apply to the code in the External directory. Each External project is licensed separately.

Building the Code

Each chapter's code is tested and works on both Microsoft Windows and Apple macOS.

To compile on Windows, install Microsoft Visual Studio 2017 Community (https://www.visualstudio.com/downloads/). During installation, select the "Game Development in C++" workflow. In each Chapter directory, there is a corresponding ChapterXX-windows.sln file to open.

To compile on macOS, install Xcode from the App Store. Each chapter has a corresponding ChapterXX-mac.xcodeproj file.

Code for Chapter 7 and beyond uses the FMOD API for audio. This requires a separate installation from (https://www.fmod.com/download). Download and install version 1.09.x of the FMOD Studio API (newer versions are untested). On Windows, install FMOD to the default directory. On Mac, copy the contents of the FMOD package into External/FMOD.