i've tried that before, works well but again not for particles. I think it works if you have our particles as a blobby surface and as spheres, but not for the rest.
I ended up rendering them as blobby surfaces and as normal perticles and using the image I got from the normal particles as a matte in comp on the blobby ones.
However that's a really messy sollution, if anyone knows how to get particle z depth to work please share.
not exactly sure how to project from the camera but you could connect a ramp to a surface shader. You should get the control plane for the 2d projection in your scene now, flip it so it faces your geometry and adjust it's size to fit your scene. Now parent it to your camera. Might work but agian it's probably a bit messy