As a quick note, the art/sound assets are place-holders that are liable to change a lot through development.
This will likely apply to all videos for a while yet but I wanted to raise it particularly now due to the temporary gun asset being used which is absolutely nothing like the art style that I'm aiming for with this project.
With that disclaimer out of the way, and having reached a stage where I'm fairly happy with the basic player control, I started work on a weapons system.
Like the camera, the gun also utilises some simple procedural animation to bob around, lag behind player movement a little to suggest weight, and to transition between "normal" and "down the sights" views.
Aiming down the sights is an analogue action; you can use it briefly just to steady a shot or you can hold it longer to zoom in further and further to better line up your shot. Whilst aiming down the sights, the player's movement speed is significantly decreased but the impact to the accuracy of their shots is also greatly reduced. This accuracy penalty was previously represented by the widening of the cross-hairs but I'm still thinking how to represent it, if at all, now that the cross-hairs have been removed. Additionally to the decreased movement speed whilst aiming down the sights, jumping will immediately break out of this enhanced accuracy mode back to the normal gun position.
I also worked on a couple of new graphical features. Firstly, when aiming down the sights, a little depth of field blurring is applied to draw focus to whatever is being zoomed in on. Secondly, I've started some initial work on a glass shader, which is used for the 2 windows. This handles both refraction and a little reflection. Its not a bad first go but I think I can improve it a bit. At the very least, I already have some idea on how to make it more efficient. Not that is currently slow, but I do so enjoy optimisation!
There are still a hell of a lot of things needed to complete the weapon system but I'm happy with the direction it is heading in after the couple of hours I was able to get in today.