I'm planning to build a 8x8x8 RGB LED cube run by an Arduino Uno. This is my first electronic project since highschool ~ 20 years ago so I'm more than a little hazy on the subject and may be making fairly fundamental mistakes/assumptions.
I've seen Kevin Darrah's impressive implementation and wondered if it could be improved or simplified by using common-cathode RGB LEDs. I think that by having cathode columns and each layer consisting of three anode sets (e.g. R pointing left, G pointing right and B pointing to the back) I'd be able to run it with 8 shift registers such as the 74HC595 controlling the 64 columns and three controlling the 24 anode layers. Much fewer than the 25 Kevin is using to control 192 anode columns and eight cathode layers.
So my question is two fold:
a) Is my idea sound or would common-anode be a smarter way to do it?
b) What chips would I need to be the current source and sinks given that I want to get at least 256 shades from each colour in each LED and therefore need to else turn the RGB components on/off extremely fast and the amount of on Vs off time creates a POV effect and dims/brightens the colour, or be able to control the current.
Update with diagrams Please pardon my terrible drawing skills, made even worse by doing this on a trackpad in Photoshop.
The darker colours are the legs coming from this LED. The fainter colours are the legs of adjacent LEDs. The RGB anodes all go laterally. R & G in opposite directions and blue perpendicular to that. The common cathode (black) forms the column and goes to the base of the structure. Three sides of the cube therefore have anode sets on them and act just like a regular LED cube would by activating (one colour within) that layer while the 64 columns are by the other set of chips. When one column is activated all activated layers on that column light up.