Programmer & Quiet Person

Q&A 002

I’ve received a new batch of questions and I’ll be answering them here! If you’re here from the stream, I’m sorry but it’s not you, I just am not a robot that is super great at repeating things. I didn’t really think I would get to this point, but the community has grown significantly faster than anticipated. It’s really kind of amazing.

What books should I use to learn programming in C

From my experience I used these books. You can find them throughout the internet or in person.

The C Programming Language – By Brian W. Kernighan & Dennis M. Ritchie

This book is one of the most prevalent books for programming. It’s relatively easy to come across in local libraries and or college campus libraries. You can also purchase the book online new or used for relatively low cost.

21st Century C – Ben Klemens

This book goes into some more specific topics than “The C Programming Language” and offers a more modern take of C’s usage. It’s also generally a good idea to diversify your sources of information, in order to build a full understanding.

Expert C Programming: Deep C Secrets – By Peter Van Der Linden

First off, this book has an awesome fish on the front of it, so that’s a bonus. Primarily this book offers some really in depth and quality insights into proper usage of the language. It strengthened my understand of API design and theory when using C. For anyone planning on using C heavily or in a very stability important environment, this is a must read.

Why are you creating an engine for “Into the Darkness” [the game I’m currently working on]

There are quite a few different reasons as to why I’m creating a game engine from the ground up for the game. Primarily it is for accessibility. With being able to touch every aspect of the game in a technical aspect this gives me greater ability to fine tune performance specifications and ultimately requirements for a smooth gaming experience. This also gives quite a bit more responsibility than shipping a game in say Unity. However I have a good experience building engines, and have done so for a very long period of time.

Another major reason as to why I’m creating the engine behind the game is so that I have exactly what I need and nothing else. This relates very closely to the previous reason, tho it is different in a few aspects. The engine doesn’t generalize a good bit of things where other engines will so that they can cater to all games. The engine contains implementations for only what it needs and for each specific thing.

Should I create a game engine for my game?

This is a difficult question to answer for everyone within a reasonable word limit. The TL;DR I would say is no. This is especially true if you’ve never made a complete game before. If you have the experience building the individual systems that go into an engine, then it becomes easier to approach. However if you’re coming from a beginner background, a game engine from nothing can be one of the hardest projects you can undertake. This is both a good and bad thing. Coming out of the other end of creating a game engine can make you a very well versed programmer in a good range of subjects. If you’re very interested in specifically game engines and not just games, then it becomes easier to approach. Keep in mind that at first it will be a very long time before you have something that feels like a game.

What book(s) should I read to learn about Game Engines?

Unfortunately there aren’t a large scale of books that go over game engines in complete. Game Engines are fairly large projects in themselves, which contain many components which are full size projects. All of these different components have to work together in unison, which adds another level of difficulty without the proper knowledge.

Game Engine Architecture, Second Edition – Jason Gregory

Game Engine Architecture is one of the few books out there which actually attempts to tackle the subject in whole. While it doesn’t go into complete depth on every subject, it provides a solid reference for people to enter game engine development. The book also provides a good place to figure out what questions you should be asking when constructing your own game engine.

What build system do you use?

Reluctantly, I use cmake. Reluctantly because CMake often over complicates building which is fundamentally somewhat simple.

What is your computer build?

Here is the list:

  • Ryzen R7 1700
  • XFX Rx 480 8GB
  • 16GB DDR4 2166MHz
  • 2 128GB SSD (1 primary, 1 code)
  • ASUS PRIME B350-Plus
  • 650 Watt EVGA Gold PSU
  • Fractal Design Define S
  • Crossover 289k 4k Monitor
  • Logitech C920 Webcam
  • Audio Technica AT2020 Mic
  • Audio Technica ATH M50xs
  • Logitech G502
  • CM Storm Stealth (Cherry MX Red)
profile pic


Programmer & Quiet Person.