Visibility control in top down games

Hi everyone! I’m working on a prototype for a top-down game I want to realize, and I’m trying to figure some stuff out. My current issue is this:

The camera is high above the character, and I want to have buildings with multiple floors on top of each other. The problem is that if the floors are too low, the camera ends up in the floor above the one the character is currently on, and you can’t see where you are.

So games have been dealing with this for years, and the solution would be to make the floor above you invisible. Ok. What’s the way to do it?
Right now my solution involves making a sub-level for each floor, and using a trigger to set visibility (and also loading). Example:

The triggers are setup this way: the one in the door on the right unloads the content of the first floor (so when the pg exits the building, the data is unloaded), the trigger in the middle loads the first floor, the triggers on the stairs just flip between visible and invisible. (I can’t use streaming volumes because they work based on the camera position, so it would be messy)

I did read in the documentation that sub-levels can be used for visibility control, but I’m wondering if in this case there is an alternative that’s maybe better that I did not think of.