If you were to ask “What are the most difficult aspects of testing a game engine,” an answer you’d hear a lot is “rendering.” What things look like when they’re drawn to screen–how do you test that? Well, to know that things drawn to screen look right you need to compare the rendered image to an image you can expect to be static, unchanging. The first approach is to create an image test fixture of the expected render image and compare that against the render image itself. However, this approach is extremely limited. As unfortunate as is is, we must leave the domain of simple static tests, and enter into the wacky world of dynamically testing.
I have a sort of mental roadmap of where I want to take Hypatia Engine. It’s nothing formal, but I thought it’d be good to put out there.
I feel like a lot of focus went into bigger picture stuff, but what I really want to focus on are the CORE graphical utilities before getting into game state, or any of that stuff. These utilities should be usable independent from the core game logic. I want a solid foundation before going forward, and I really want to avoid accruing technical debt.