Implement better visibility algorithm.