I always wear a hat while shooting to keep brass from hitting me in the face, and to guard against having a piece of hot brass come in between my glasses, and my eyeball. In the summer here in NC it gets quite hot, and I have found that my hat + safety glasses combination leads to fogged up glasses, which leads me to slide the glasses away from my face, which is not safe.
I searched for a solution for some time, trying things like car wax, rain-x, etc. They all worked somewhat, but not as well as I would have liked. While looking around at Dicks Sporting Goods some time back, I found a bottle of “Speedo Anti-Fog Solution” meant for use on swimming goggles. I bought some, and applied it to my shooting glasses. Viola! Problem solved. It tends to wear off every couple months, but it just takes a couple minutes to re-apply.I’ve been using the same bottle for over a year now, and because it only takes a couple drops for each application, it is still mostly full. Good stuff.