Skip to content

C++ Game Programming starting with basic 2D games and building up to 3D work. See README

Notifications You must be signed in to change notification settings

salvafide/GameProgramming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Game Programming with C++

Studies + exercises from book of the same name by Sanjay Madhav

Description

A long-term project that I am using to strengthen and reinforce my game programming fundamentals. This project starts with fundamental concepts of game programming in 2D and moves into 3D. Demo projects are written to demonstrate the fundamentals learned.

Progression

Note: image quality may be compressed for better load time of gifs

1. Pong - Core real-time game concepts
  • Game Loop
  • Game Updating over time
  • Game input and output

2. Side Scroller - Game object representation + 2D grahics techniques
  • Game objects representation models
  • Implement Actor-Component Model
  • Sprites
  • Sprite animations
  • Scrolling backgrounds
  • Tilemaps

3. Asteroids - Vectors and Basic Physics
  • Vector math: Vectors and how they are used in games
  • Basics of Newtonian physics
  • Basic movement - Move Component
  • Keyboard input - Input Component
  • Collision detection-Circle Component

4. Asteroids - Convert previous demo from SDL graphics to OpenGL
  • Begin transition from 2D to 3D
  • Drawing sprites - triangles(polygons) and vertex array objects
  • Matrices and transformations: scale - rotation - translation
  • Object space - World space - Clip space
  • Vertex and Fragment Shaders
  • Texture mapping and alpha blending
  • 5. 3D Graphics
  • 3D transform matrices
  • Euler angles and Quaternions
  • Loading 3D models
  • Drawing 3D meshes- View/projection matrices
  • Z-buffering
  • Lighting- light types + Phong shader
  • Dependencies

    • Windows 10
    • Visual Studio 2022
    • SDL
    • SDL_image (Demos 1-3)
    • OpenGL 3.3
    • GLEW
    • SOIL

    About

    C++ Game Programming starting with basic 2D games and building up to 3D work. See README

    Resources

    Stars

    Watchers

    Forks