My Mind is My Home

Project Summary

As part of a two man team, burglar Alice has just arrived at an abandoned building once belonged to an infamous toy-maker. You're about to find out the secrets of their craft.

Details

Contributions

  • Room and Item XML loading
  • Flashlight logic, layer-sorting, and blending

Fake blend-modes

The major feature of this game was the idea of the flashlight. In order to get the unnerving feeling the game was based upon, it was supposed to change the room as you shine your light throughout it. While I were not the one assigned to the task, I helped where I could, as I were the one who said the graphics library we used, Haaf's Game Engine (HGE), could handle it.

I couldn't just leave it for someone else to figure out after that.

At the time we begun on the project, we hadn't yet learnt a whole lot about graphical programming, but knowing what blend modes could to, I knew that we could manage it. In hindsight, I shouldn't have been that confident, since we got a good bit of setback. At the time I did not know that the HGE version were not capable of blend modes other than the normal overwrite mode, as well as colour and alpha adding.

At first, we intended for the blending to be using a simple mask for the flashlight which we could draw out with all other lights in a scene and used to get only the light parts of the room. That light render would then be inverted and used to get only the parts of the room which were to be dark. Both textures could then be added together to get the final render.

This method was intended at first since we wanted to place other light sources in the scene and they also were to alter the scene. This could then be used in flashing lights or overall lights which were altered. It also supported coloured lights.

Sadly, the first method turned out not to be supported, as the version of HGE we used did not have multiply colour blend-mode which was needed to get that to work. We only had an addition-mode.

This meant that we only could use blend-modes to put the light and dark results together, and not to get the two in the first place.
At this point, we did not want to spend any more time than neccessary to get the feature into the game, and so the part about multiple light sources and colours was cut. This allowed us to simply draw a black part over the sections of the screen which was not interesting.

Adding the two together, and then drawing a few more flashlight effects on top of that got a result we all were pleased in, and it was kept.