Skip to content

The game projects loosely following the "Beginning C++ Game Programming" book by John Horton.

License

Notifications You must be signed in to change notification settings

UndeadAlex/John-Horton-Book-Projects

Repository files navigation

John-Horton-Book-Projects

The game projects loosely following the "Beginning C++ Game Programming" book by John Horton.
I hope you enjoy looking at my journey and please give any feedback if u find issues or places of improvement. Also for a slightly different read please visit the relative project page on my github io page it might be more or less detailed, thanks :)

-Alex 💜

Project 1: Timber

Death to TREES i suppose

Welcome to project one, Timber. I followed the book relatively closely on this one making edits where I thought would make my life easier such as a constant class for holding window size (I learnt this from a friend), other than my wrapping in classes for specific objects such as the clouds and bees, I decided to maybe follow a bit closer to the book which is why there is not a player class or a class for branches etc. when it comes to the end of the book I plan on going over all the projects to fix and improve on the projects where I can.
I did learn quite a bit from making Timber a bit part was how to load assets using manager classes (TextureManager and AudioManager) as well as loading fonts and displaying text, if I were to list everything I learnt about SFML and some C++ in this area it would be quite long, but to keep a long story short I learnt how to make an albeit simple game and core ideas for doing so loading assets, player input, not causing memory leaks and the idea of using state machines to control the flow of the game.

My plans for its fresh coat of paint after I’m done with the book is mainly to create my own version of the assets and hopefully clean up areas of code and comment on them where smart, maybe even save the high score to a file

Project 2: Pong

Almost hypnotic no ?

Welcome to project two, Pong!. Being completely transparent here, I didn’t really follow the book for this project, I’m still having it listed here as i made pong because of this book but the code is all mine.
I’m happy with how it turned out, even if it’s just pong and not the hardest game to make there were a couple times that stumped me such as how to award score to the player, but by doing collision checking in the Game Manager class and calling a Bounce function on the ball it solved it nice enough, I did realise while doing the writeup for the site and repo that I forgot to add bouncing if the ball hits the top or bottom.
Other than it just being pong, I have some plans for when I’m done with the book, hopefully adding features such as high scores, powerups (maybe as an optional mode?), sounds and maybe some shader effects.

As it stands this was still a fun project even if I didn’t follow the book for it. Allowed me to prove to myself that I can work and plan on my own.

Project 3: Zombie Arena

TODO

Project 4: Thomas was late

TODO

Project 5: Space Invaders ++

TODO

About

The game projects loosely following the "Beginning C++ Game Programming" book by John Horton.

Resources

License

Stars

Watchers

Forks

Languages