Sort:  

I think that Polycub is a great example of how it can be done but it's not as easy as it looks like :-)