Posts

Showing posts from February, 2018

Update 28 - Drawing Infinity As Fast As Possible

Image
VNgen is an unusual GameMaker product. As previously described, it breaks the linearity of Step cycles and re-implements many built-in functions to do more work faster. With 1.0 approaching, I'm forced to evaluate the state of each part of the engine and ensure it's working as desired and is consistent with other engine functions, which has often led to even further reworks of standard GameMaker conventions.

Some of these have been significant enough to warrant spinning off into their own, separate products. However, none so far have been quite as amusing as a certain trick added to VNgen over the past couple of weeks—one which makes drawing infinity a cinch even for the lowest-end hardware on the market today.

GameMaker and I had a disagreement. I wanted to create my own camera system independent of viewports or even the new camera system added in GameMaker Studio 2. The reasons for this are many, and also beside the point (you can, in fact, even combine systems). What's im…

Update 27 - Semantic Arguments

Image
With all major features in place, VNgen is now on the straight and narrow path to version 1.0. As you'd expect, this means isolating and fixing bugs—many of which are difficult to produce in the first place—but more importantly, the past two weeks have been all about standardization. Sound boring? Well, read on, because as you'll discover, standardization doesn't mean nothing new was added. And even better, you can see for yourself right now!

Unity in DiversityDesigning a group of disparate functions that all work in the same way is a challenging logical process—and yes, it is a process. I suppose if your IQ is high enough you might be able to foresee all the possibilities ahead of time, but for everyone else, it's a series of experiments and revisions. But that's not a bad thing. Standardization is, in essence, an exercise of recognizing patterns and iterating until everything follows the same pattern. In programming, specifically, this also means reducing redundan…