We present a novel algorithm for the rendering of hard shadows cast by a point light source. The well-known Z-pass method for rasterizing shadow volumes is not always correct. Our algorithm, which we call ZP+, elegantly corrects Z-pass defects. ZP+ takes advantage of triangle strips and the fast culling capabilities of graphics hardware not available to conventional robust methods like Z-fail. While Zfail can be up to 80% slower than Z-pass, our new method ZP+ is typically less than 10% slower than Z-pass. Finally, we compare the three methods. When a scene is geometry-bound, ZP+ is always faster than Z-fail. We also explain why, in some situations, Z-pass (hence ZP+) is surprisingly slower than Z-fail on more recent graphics hardware.