As you can see there's a lot of cut and pasting so it didn't take too long

. The hardest part was the clipper. Normally I do that iteratively, plane by plane, but without using pointers that's very hard, so I did it recursively.

The other thing I like about this is that I sacrifice an extra If check per pixel from the wbuffer to see if the colour pixel was written since the wbuffer was last cleared, meaning I don't have to WritePixelFast any unrendered pixels. WPF is too slow in B2D.
Jim