How layers and depths are handled together
var entity1 = new IgeEntity(),
entity2 = new IgeEntity(),
entity3 = new IgeEntity();
// Set entity1 to at layer zero and depth 100
entity1.layer(0)
.depth(100);
// Set entity2 and 3 to be at layer 1
entity2.layer(1);
entity3.layer(1);
// Set entity3 to have a higher depth than entity2
entity2.depth(0);
entity3.depth(1);
// The engine sorts first based on layer from lowest to highest
// and then within each layer, by depth from lowest to highest.
// This means that entity1 will be drawn before entity 2 and 3
// because even though it's depth is higher, it is not on the same
// layer as entity 2 and 3.
// Based on the layers and depths we have assigned, here
// is how the engine will sort the draw order of the entities
// entity1
// entity2
// entity3