Normal Maps and Construct 2
Congratulations, you have your normal map and you know why you absolutely need to have one, but then ? What are you supposed to do with this strangely colored thing ? How do we use it in Construct 2, concretely ?
Don’t worry, you've already passed the harder part : you got the normal map.
Indeed, C2’s community is what it is, and some members have already designed their own effect to provide the possibility of using dynamic lighting in our games. This tutorial is nothing than a catalog of the available effects including the way you’re supposed to use them. In fact, we can deal with this kind of lighting since 2012 at least. In every case, normal maps are required.
By using one of these effects on our precious normal map, we can create a movable light source which will generate shadows depending its position. In other words, as soon as you apply the effect on the map's sprite, it becomes dynamic pure shadows as you can see on the previous screenshot. Great.
Now you can have dancing shadows. But they need to dance on something, otherwise, everything will be invisible because you can’t see shadows in the void (you know, the shadows are black, the void is black…things are complicated.) Guess what you must use ? Your sprite itself, of course ! The diffuse image !
The sprite is supposed to have the exact same size than its normal map, so you just have to place it at the same position and the job will be done. This is the whole concept right there. You still have your dancing shadows, but they are dancing on the sprite now, and because your sprite has the same size, shape and position as them, you have the certitude than it’s dynamically enlightened. Yes, everything is a lie, a beautiful one.
Your job : make sure that the normal map is always at the same position and the same angle as your sprite in the event sheets. In brief, a piece of cake.
The theoretical part of this tutorial is officialy over. Let me introduce you to the different available effects created by various users of Construct 2 and how to correctly implement them in your game project. Once again, I highly recommend you to read everything before choosing any of them. Let’s begin !