   A few general questions
  I have a couple small questions that i didn't feel required their own topics.I am a Linux VI C programmer that is getting into opengl.   Unfortunately all my friends that i want to share my programs with are on Windows.  What, in your opinion, is the best way to make cross platform programs.  Should i make the code compile on windows machines via #ifdef WINDOWS statements, which i really don't know what that even does, or should i just statically cross compile them?Also, for some general all around basic game programming articles, what are your favorites?I found: http://www.gamedev.net/reference/articles/article1947.asp and http://www.gamedev.net/reference/articles/article1229.asp series, are they any good, the second one seems pretty heavily windows in the first two, but i haven't looked at all of them yet.Thanks!   
Quote:Original post by ChocratesI have a couple small questions that i didn't feel required their own topics.I am a Linux VI C programmer that is getting into opengl.   Unfortunately all my friends that i want to share my programs with are on Windows.  What, in your opinion, is the best way to make cross platform programs.  Should i make the code compile on windows machines via #ifdef WINDOWS statements, which i really don't know what that even does, or should i just statically cross compile them?In your case I suggest using SDL which allows you to abstract most or even all of the platform specific stuff. Then develop on both Windows and Linux in tandem dealing with issues as they arise.   ;  also, you can create projects with CMake, with is a project builder that lets you create different projects(Makefile, Visual Studio solutions, etc) with the same file for all platforms   ;  With SDL you'll be using a few #ifdefs.Main is replaced with winmain, for example.Also, on newer Windows platforms, if you don't pump events, it'll assume the program has boned itself and may kill it.Warning! SDL 1.2, the latest stable, doesn't hardware accelerate on Windows anymore.You might use the developmental branch, depending on what your doing and your performance needs.   ;Quote:Original post by JoeCooperWith SDL you'll be using a few #ifdefs.Main is replaced with winmain, for example.Also, on newer Windows platforms, if you don't pump events, it'll assume the program has boned itself and may kill it.Doesn't SDL handle all that for you? I haven't used SDL with Windows 7, but with SDL 1.2 at least, the platform-specific details you mentioned are handled automatically. Or have you found that not to be the case?   ;Quote:Original post by JoeCooperAlso, on newer Windows platforms, if you don't pump events, it'll assume the program has boned itself and may kill it.Warning! SDL 1.2, the latest stable, doesn't hardware accelerate on Windows anymore.Don't know what you mean by pump, but im sure when i get to it, it wont be too hard to figure out.Any idea why they don't hardware accelerate anymore?  This wont be a problem for me until i get better at it, but that seems strange that they would take it out.   Did the windows api change drastically and they just haven't got it fully implemented yet?Anyways, ill look into SDL.  I used it a number of years ago for a simple 2d game, at the time i thought it was a 2d graphics library, it appears i was mistaken....Thanks all