In reply to Tim Davies:
RainX helps a bit. A cycling cap under your helmet is the most effective at keeping rain off lenses. I think that a good car polish is better than RainX - it needs a bit of courage and a soft cloth but clean your glasses, and wipe some gently onto both sides of the lenses with your finger. Let it dry. Polish it off very gently with a soft cloth and repeat.
Works on Oakley's with fancy coated lenses - even to the extent of making a pair with a ding right in the eye-line good to wear again. I set about those with a 'nothing to lose' approach and gave them about eight coats and a good polishing - they're wearable now.
The more coats you apply, the more resistant to fogging they get.
I use Autoglym because that's what was in the garage. If you use that colour-restorer polish, you deserve to be in a ditch...