Some of you may be familiar with a particular feeling. The feeling when you're a beginner who has spent a fair amount of time building something, be it machinery or electronics or software, and you make a final tweak and it just works. And suddenly you see something tangible, not code or circuitry or gears or anything of the like, but something you can feel and truly play with. In that moment you feel like Dr. Frankenstein, having bent what you feel is a great power to your will and now, after long efforts, you are watching it do exactly as you have instructed. This was a feeling I got the first time I completed a coding exercise as a beginner in an Intro to Comp. Sci. class, and I felt it again now, as the first portion of the first major software project that I have ever built from scratch successfully launched and worked exactly as expected. And so I reach the end of the first stage of my journey toward a working game engine.
If you recall, when I last posted I had written all the code for renderer initialization that Zerbst and Duvel had to offer, but had still encountered several bugs in my conversion between ANSI and Unicode character sets. As is probably clear, the bugs have all been fixed, and the test program used to demonstrate a working renderer instance is now running smoothly and precisely as expected!
And so, now I am back on track and can freely move on to the next stage of the engine: building a helper library for 3D mathematics computations. Here's where my background in physics will come in handy!
Progress So Far: Fixed bugs in renderer instantiation code, and can now successfully run the renderer demo program.