Clean up 3D intersection logic