to get all this flexibility I have made it either hard to use or generalized so much that all render types work but none are particularly fast.???The reason you would not want to centralize your drawing code will become more apparent when terrain is discussed.Anyway, just a note, why do you say a Terrain is not a mesh anyway?