dithering and silhouettes
or how to make obstacles disappear
Greetings, fellow developers! I hope you’re all doing well. This week, I dedicated my time solely to coding, focusing on optimizing an essential aspect of my game: visibility of the player character when they are obstructed by objects or walls.
To tackle this challenge, I decided to explore how other games handle similar situations. One interesting approach I came across was in Diablo, where specific parts of models become invisible when the player character is positioned behind them. However, implementing this method would require creating new models that can be split at a certain height, which could be time-consuming and complex.
Another game that caught my attention was Genshin Impact. They utilize a simpler technique known as dithering, where objects beyond a certain distance from the camera are rendered with a pattern of dots, creating a sense of transparency. This approach seemed more feasible to implement and could provide a satisfactory solution.
Additionally, I considered the option of displaying only the silhouette of the character when they are obscured by objects. This minimalist approach can effectively convey the player’s presence without revealing intricate details.
The dithering effect has captured my attention as a potential solution for maintaining both acceptable performance and visual appeal. I believe that with proper implementation, it can effectively address the visibility issue while minimizing performance impact.
Once I have finalized this crucial piece of the puzzle, I will share my findings and demonstrate how the dithering effect can enhance the gameplay experience by ensuring the player’s constant visibility, regardless of their surroundings.
Until next time, happy coding and game development!