I'm off to go do some testing today. But here's a table that provides a quick summary of what I'm thinking for terrain effects on visibility. Still working on the wordy version.
A few things to add:
- Models can't fire across hills unless they're hugging/hull down (touching the back side).
- To determine whether you can see over a piece of terrain from a higher position, it's a TLoS test for the target's base. If you can see the whole base, they get no protection from the terrain they're behind.
- Woods can't be seen over.