What kind of clear are you putting on? That can make a difference too. To get that super shiny glass-like finish, you need a super hard finish, like lacquer or a good 2k urethane. If you're using any kind of poly... like polyurethane, they don't take well to buffing and you'll only get a headache. So, assuming you're using a lacquer or 2k, the steps I use would be the same.
If you want a true glass like finish, you need to wet sand between coats. Just a gentle rub down with 800 or 1000 grit will be fine, but don't do to much or you'll go right through the clear and paint, down to plastic. With all those rounded surfaces on a controller, you'll need to take real care not to sand too much.
once you have a few coats built up, you're ready for the final cut and buff. I always start the final cut with 1000 grit to get rid of any orange peel. Then go to 1500 to smooth it out, and finally 2000 grit which will start the actual buffing.
Once everything is sanded to 2000, then I use automotive rubbing compound. You can do it by hand, but a SLOW buffing wheel makes it so much easier. Rubbing compound is still relatively harsh, so you still need to take care not to go to far or your go through the clear.
After the rubbing compound, I use a polishing compound to get rid of the scratches from the rubbing compound. Again, you can do it by hand, but that slow buffing wheel will save you lots and lots of time and sweat.
Finally, I use meguiars scratch x 2.0 to do the final polish. I've tried lots of different things, but this stuff gives me the most consistent glass-like finish.
This is the process I've used on guitars for years, and have never had a complaint.
If you want to go a more traditional route, you could used pumic ash instead of rubbing compound and rotten stone dust in place of the meguiars. That was the what my grandfather used when he finished furniture and wanted a perfect finish, but I've had trouble finding a good supplier for those in my area.
Good luck, and remember to be VERY gentle on those rounded surfaces.