This circuit lets you have an adjustable-brightness, but without using a microcontroller. It's fully analog! it costs a little more - about $2 or $2.50 total - i hope you won't mind.
The main difference is that the NFET is replaced with a voltage regulator. the voltage regulator steps-down the input voltage much like the NFET did, but it is designed so that its output voltage is set by the ratio between two resistors (R2+R4, and R1).
The current-limit circuit works the same way as before, in this case it reduces the resistance across R2, lowering the output of the voltage regulator.
This circuit lets you set the voltage on the LED's to any value using a dial or slider, but it also limits the LED current as before so you can't turn the dial past the safe point.
I used this circuit in my RGB Color Controlled Room/Spot lighting
please see the above project for part numbers and resistor value selection.
this circuit can operate with an input voltage from 5V to 28V, and up to 5 amps current (with a heatsink on the regulator)