3D Rendering with Binary Space Partitions