I've got an isometric diamond-shaped world. The world consists of isometric planes like rooms. The walls and floors of the rooms and all obstacles and items in the rooms are isometric entities. So I have a list with each existing object in the world. Each object has its own coordinates. x, y, and z. x is from top to right bottom, y is from top to left bottom, z is straight up into the air. Each object has also an isometric width and height as property.
Now I have to render the world correctly. I'm quite sure the only hard step is to sort each object by its depth, and this isn't that hard when nothing changes in the world. But of course everything changes... I want to figure out a sorting system which is very fast, so it doesn't do too much unnecessary work. I ended up with multiple articles, saying a pigeonhole sort is the way to go. But is this really the right solution? And doesn't this cause rendering glitches? I also read that I should use topological sorting. (https://en.wikipedia.org/wiki/Topological_sorting).