A year ago I wrote that we were probably not going to do any more of these but alas – circumstances conspired against us and I am left with no abandoned themes to write anything meaningful about. Instead, I want to make this post-Halloween brooding about some of the tech and the associated editors that we left by the wayside.
Collision geometry in Backworlds was always built first and without consideration for consistency, this led to a large variety of shapes that we early on could not cover with a small set of art pieces. Switching between the engine and a drawing program became a cumbersome workflow so we started thinking about ways to move more of it to the editor. As we introduced HSLE sprites the images themselves did not need to be very high detail so we created a basic painting program for HSLE masks directly in the game.
It was easy to do quick mockups with this tool and it had some basic advantages like auto-generating outlines from the collision geometry, but as our standards increased it turned out making our own painting program that could meet the quality was not a good use of time. In addition, having unique background art for every level was a maintenance and memory nightmare.
We ended up with a component-based automated solution instead, and later on as the art style matured we partially moved to geometry-based formats.
An observation of our early art was that having too much detail in the patterns made the levels hard to read but when we had too little the levels started feeling too flat and we were lacking in visual interest. To counter this, we added the option to have one or more light/shadow layers on every level and an edit mode that allowed you to paint this layer directly.
We did not get far with this endeavor, partly due to the same reasons as the background painter. Having level-specific images for light data took up a lot of memory and making a tool allowing us to meet our quality needs was nontrivial and not worth the time investment. More importantly, we shifted to adding variation and visual interest with color and detail levels, and used lighting overlays in specific situations.
The final tool I’m going to mention is the early curve editor – we talked about this previously. The basic idea of the curves is sound and we use them extensively – not just for particle systems – but the first iteration fell short in a few important ways.
For starters, having interpolation types on every node was never actually useful, and having only a single scalar value instead of a range limited the variety we could describe with each curve. More importantly, having to leave whatever else you were doing just to edit a single curve proved very disruptive to the workflow as you typically needed to match different aspects to each other or make many small changes in a short amount of time. The new curve editor changed these things and works more like a UI widget that we can put in any menu.
That is all we have for now! The IGF entrants have been posted and as always there are many gems there, though I would like to give a special shoutout to our friends at Nyamyam with the exceptional musical-astrology-doctor-sim Astrologaster.