yeah, it's really really useful. You find it for instance in gpu gems 3, though I don't remember where exactly. Sure, it also works for box blurs, in this case it's very simple: always sample halfway between the pixels for every second pixel. No need to store weights either, just divide by the number of pixels in the end.