
However, how does one change colors in mid-print on an inexpensive 3D printer? One obvious solution is to cut the filament and feed in an alternate color – but this technique is not ideal as you can’t accurately predict when the color coming out the nozzle will actually change and frequent color changes are problematic.

A RepRap experiment last year attempted to use inkjets, but this was really not for coloring solids, but for laying down special substances in small amounts – like electrical traces or sticky parts, etc.
Makerbot hosts a wiki page that investigates the problem of color 3D printing, and the conclusion is that to do it properly, it’s pretty complex. New hardware is clearly required, as well as serious software upgrades. Worse, STL format might have to be changed to account for color information.
Bottom line: Buy some colored markers.