implemented both near and far plane clipping. Missing case where a triangle must be split in 2.