FuseEngine: A Pixel Engine for Unity

Get FuseEngine

FuseEngine Demo

FuseEngine Documentation

FuseEngine - A dynamic drawing engine. It draws directly to a single texture, simulating a PICO or Javascript-like system with a application-loop style, outside of Unity's object-based environment.


 From a single Color[] array, it can be transposed onto grids or textures and just like a regular Unity application responds to input.


 Designed to create small games and applications within Unity, FuseEngine is equivilant currently to early DOS level systems, or NES games. Three demo games show off it's capability - and much more is possible within it. Create anything from a handheld game system to consoles or computers, or control panels within games that have their own functions.


Originally spun off the Fuse Bead Simulator, FuseEngine came from the way that FBS lays out the bead patterns. While building Fuse Bead Simulator, I wanted to add additional mini-games to it that looked like they were drawn in beads.


 This actually did prove feasible. However, it also didn't really work out exactly the way that had been planned, with mini-games being displayed on a bead screen. The primary problem was that it could only do a "resolution" of up to 64x64 max, before the entire screen started to slow down - due to each bead being an object.


 In order to solve the issue and generate higher resolutions, additional methods were researched to emulate the look and feel of beads but keeping the rendering requirements low. I settled on taking the array that handled the beads, reducing it down to the basics - a "Color[]" array, and then rendering it out to a texture. A secondary texture was placed on top to imitate the look of the beads.


 From there, ways to control the Color[] output were needed. I ended up researching Arduino systems in C++, and created an API based on direct hardware interaction with digital screens.


 FuseEngine was the ultimate result of this work. It's a rendering system designed to output micro-applications that emulate up to an early DOS feel, and can be moved around a Unity game world with ease. There are a few limits - for those using it, I would suggest no more then three active screen sizes at a maximum 300x220, but otherwise it behaves extremly smoothly.