It’s quite common for 2D isometric games to have objects obscure other objects, e.g. player character be obscured by a wall that they are standing behind. Ideally the level design would make sure that situations like that didn’t happen, but in reality due to other considerations like visual or combat design, that is not always the case.
Although some games do just ignore this problem, it can have an detrimental effect on gameplay – “Where is my character?” – Pixel hunting for a head sticking out of a bush doesn’t seem like a good time.
There are multiple ways to solve that issue. Some games just fade out the obscuring object, some create a bubble around the character that makes cuts through the obscuring object. However the clearest and cleanest solution I found was to just render the character in some different way over the wall, bush or another object that would otherwise hide it.
This is much easier to do for 3D games, but with some shader and post processing shenanigans I got this to work pretty well. Now when the player party, enemies or NPCs are obscured by level geometry or decorations, they will be shown clearly. This should make navigating the player and companions through a map, or during combat much less of a hassle.