Project Overview
Canvas is a passion project of mine and a good college friend. I did the graphics programming, and put together most of the gameplay mechanics around painting. The game utilizes some unique paint mechanics to drive exploration that to my knowledge has never been done at this scale.
This game leverages a primitive version of virtual texturing that I built from the ground up (this was prior to popular engines like unreal and unity adding support). Textures are unloaded based on various heuristics that determine if they are relevant allowing us to keep the memory useage within budget. When unloaded these textures maintain a cache of the inputs that modified it and reaply those inputs to regenerate the texture when loaded again. The painting system is built in a modular component style so that the designer can combine different types of components together to provide interesting combinations of effects/interactions. One example of this is the paint drain effect above. The image above has a paintable component, a fill effect component, and a drain effect component. If the player can manage to fill most of the object it will trigger fill events.
Please check out the demo on steam if it seems interesting to you. Please provide feedback using the the in game feedback tool, and wishlist if you are interested in playing it when it releases.