I have controlled the high current LEDs with both current sources and current sinks.
I am just finishing up the testing on an LT3755 driver circuit (current source) that
is driving 12 3W Cree XLamps. This driver has excellent performance if you
are careful with the layout. This device can do almost a 10:1 boost
at 50W! Being able to simulate in LTSpice was extremely convenient.
If you want a simpler layout you could look at current sinks. You would need to get
a supply capable of producing a voltage slightly greater than the sum of the Vf(max)
of your LEDs. Using a FET and op-amp you would create a voltage controlled current
sink. You could PWM this by setting the current to zero. I use an analog switch
on my current-sink.
Here is a picture of my current sink design -- http://wiblocks.luciani.org/not-quite-ready/ZB1-ISINK-index.html
The FETs are rated for 40A, the connectors are rated for 10A. For an LED
application with a reasonable size heatsink you can probably go to 2A.
The LEDs in the pictures are being driven at 350mA. No heatsinking is
required if the dissipation in the FETs is kept below 1W.
The board in the picture is being controlled by my Arduino compatible NB1
board.