Improve depth buffering in D3D by computing a depth-flipped proj matrix but only when needed.

Also delete a strange calculation from the vertex shader that didn't make a lot of sense.
Could probably simplify this with `bool invertZ = gstate_c.vpDepth < 0.0f` but doesn't really matter.

-[Unknown]