This is rather tricky to think about, becuase of the massive amounts of variables that are implemented while you play. Everyone here is contributing ways to solve only a few of those variables. Cliff vision, unit vision, enemy vision.
But what happens if you are a zerg unit and you want to burrow. Do you think you should have all that vision you have whilst you burrow? You are in a hole!!
-Note: I did not say solve this problem. It is just something nobody said and I wanted people to know.