Easily done in Dark Basic if you don't mind a little basic coding- Cooked this up in a few minutes. The resolution is 640x480 but can be set higher.
The code is simple and below.
=========================================
Sync on
Sync rate 30
Hide mouse
backdrop on
Color backdrop RGB(255,255,255)
Set ambient light 30
For x=1 to 8
Make object cube x,10
Next x
Position object 1,-10,10,20
Color object 1,RGB(50,50,150)
Position object 2,0,0,20
Color object 2,RGB(250,150,0)
Position object 3,10,10,20
Color object 3,RGB(150,150,150)
Position object 4,-20,-15,20
Color object 4,RGB(150,50,150)
Position object 5,-10,-25,20
Color object 5,RGB(50,50,150)
Position object 6,0,-25,20
Color object 6,RGB(50,250,50)
Position object 7,10,-25,20
Color object 7,RGB(250,250,0)
Position object 8,20,-15,20
Color object 8,RGB(250,50,50)
Make light 1
Position light 1, -50,30,-60
Position camera -30,20,-30
Point camera 0,0,20
Do
Sync
Loop
=================================================
This is the setup but you could easily store the position of the blocks in an 8x3x? array for movement algorhithms. Very easy. Don't know if this helps at all.
Doc
P.S.

Modified after I read the link again and realizedI was in the artwork section. Doubt the resolution would be high enough for you. Could be used to make a doosy of a screensaver or interface for your cab.