Two extra requirements:
- I have to be able to alter the viewing angle arbitrarily
- I want to use relative coordinates rather than hard-coding the absolute coordinates of every cube. I'd like to be able to define cubes relative to nearby cubes using nodes since it will be easy to generalise this code to other shapes.
I'm fairly experienced with TikZ, but just looking for a more elegant solution.