Welcome back to a new development blog of No Heroes!
First Person View 2.1 Preview
Starting things off with First Person View, i decided to figure out how to fix the shadowing issues and lighting due to how this system works (very short z-buffer for first person objects with custom projection matrix (independent FOV)). Because of that, shadows were almost an on/off effect, and lighting was also on/off.
I was able to improve this, and give real depth to the player character. There are still some things that need to be improved and optimized for easier setup, but it’s looking much better as you can see in the following screenshots (light is exaggerated on purpose for easier shadowing visualization):
Remember, first person objects don’t clip through the environment and have a separate field of view, much like any modern shooter. This allows changing the field of view without distorting the player models. To my knowledge, i haven’t seen this achieved in any Unity made game yet.
I was also able to add player shadows onto the environment, making the player feel a part of the world:
Jumping onto the terrain, i switched a few textures to new ones that give a much better quality to the terrain. The new grass and dirt textures make the grass feel like it’s part of the terrain.
Overall quality also increased, with higher resolution textures and new speedtrees placed on the environment.
Game and Controller Predicted Movement
One thing i noticed when testing the game, was that the movement wasn’t always fluid. This was due to the movement and smoothing being made on the fixed-update methods (constant slower frame-rate), due to the networked controller predicted movement. Now, a smoothing algorithm is performed on the Update method, that smooths out the players movement in relation to the actual frame-rate of the game, making everything feel much smoother.
Until this update, when a player died, the ragdoll would remain in the game until the end. Now, each client is allowed only one ragdoll during the game.
Wind Shader Experiment
Just yesterday, i was messing around the environment, and one thing i noticed the most was that, except for the grass and trees, it was too static.
Using the asset ShaderForge, i made a shader that simulates low level wind on the objects. The effect runs on the GPU, so it’s not very expensive. It still has some improvements to give a more natural wind effect, but by adding wind effects to certain objects on the environment will make it feels much more real.
This effect already has the option for exclusion mask, wind texture, wind speed and deformation amount.
Last but not least, i was able to improve certain sounds in the game.
I added the ability to have more than one footstep sound per surface and fixed the loud noises it was causing.
New footstep sounds were also added, plus new gun sounds for firing and handling it. At the moment only the pistol has new sounds, but more will be added to other guns.
In addition, I ugraded the Unity version to their latest Unity 5.5. Performance improvements and general looks improved by making this update.
Many other things were worked on, like improved networking performance, bug fixing, player movement, classes structures, textures, and more.
Well, that’s it for this development blog.
Thanks for reading it and hope you’re liking the progress!
Don’t forget that you can see what is being worked on No Heroes and what’s left to do on the official Trello board: https://trello.com/b/mcKE6OVj/no-heroes-game-development-drunken-lizard-games
Also, take into account that this is a hobby project of mine, and i don’t work full-time on it, so it’s not unusual for updates to take some time.