If programmed under Windows XP, it will run on Vista and probably will on a Mac if running it in Windows emulation. Otherwise you will have a ton of headaches.
In my last job I programmed for multiple platforms (serveral flavors of UNIX and Windows). We minimized problems by using C, not C++ or C#, as C is more portable. We had one code base and #defined the various OS's with headers and methods.
Game programming will be even harder since its suppose to give the end user the 'Ultimate Experience' and there needs to be a lot of profiling to locate time consuming sections that can be optimized to keep your frame rate up.
Since you are a games developer, what language are you coding in? C, C++, Direct X, Open GL, or one of the scripting ones? It would seem to start with what you know and build on that.
Good luck.