There is or should only ever be one reason for wearing an undershirt - and that is if the wearer is too cold. I come from the land down under - Australia. I live in Canberra, and have for the past 32 years. I never wear an undershirt - at least at work. In the winter, if I am a little cold, I put on a T-shirt. The A/c at work is always at the right temperature. Wearing an undershirt to cover man boobs or chest hair is absolutely ridiculous. If you are a man - be a man. Don't be afraid to show a little skin. The US tradition of men wearing T-shirts under shirts as part of the uniform seems atrotious to me. Be a real man - get out there and enjoy life. Life is too short to be restricted.
In the office, I wear mostly darker coloured shirts, and no tie. You can't tell what is underneath. I don't like to display one way or the other. Besides, a T-shirt showing at the neckline to me is gross, and any lines of an underhsirt looks tacky.