MFC vs Straight vs C/C++ vs GLUT vs GLF vs Mesa etc.

I noticed there are a lot of ways to implement OpenGL programs in Windows. Is there a performance difference in each.Are there any other factors that would make someone prefer one form over another. So far I know of
Straight C/C++
GLUT
MFC
Mesa
GLF (hope I got this right)

Also, in layman terms, what’s the difference between OpenGL 1.3 an the version that comes with MS VC++ 6.0. I have VC++ and the version of OpenGL that comes with it and want to know what I’m missing out.

First understand that C/C++, Delphi are programming languages.

The other items are tools to make programming easier. Once you start to program you will find that some routines are used over and over in every program. So instead of re-writing these routines they turn them into utility library’s of the most common used ones.

MFC(Microsoft Foundation Class) Made to aid people in writing windows based programs.

GLUT, GLU, GLF, etc (GL utility toolkit) Made to aid in the writing of OpenGL program.

Mesa a OpenGL like graphic interface for X-windows. Which has a lot of OpenGL based commands.

Think of OpenGl 1.2 to 1.3 just like you would direct X moveing from 7 to 8. New better commands are added to support new graphics features.

Originally posted by Furrage:
[b]I noticed there are a lot of ways to implement OpenGL programs in Windows. Is there a performance difference in each.Are there any other factors that would make someone prefer one form over another. So far I know of
Straight C/C++
GLUT
MFC
Mesa
GLF (hope I got this right)

Also, in layman terms, what’s the difference between OpenGL 1.3 an the version that comes with MS VC++ 6.0. I have VC++ and the version of OpenGL that comes with it and want to know what I’m missing out.[/b]

Okay, that seems straight forward so far. But I was browsing some threads and see people touting SDL and GLF over GLUT and the others. Is the difference really a big deal? Or can I continue to use MFC and not worry that I’m not using the best toolkit available. I just got started on VC++, OpenGL and MFC in my spare time and I’d hate to have to relearn the whole thing before I accomplish anything. Time isn’t on my side in this case.

I’d say that most toolkits are good ones, but they are designed for (more or less) different needs. So my suggestion is that you take a look at a few options before you “get stuck” on one path. Perhaps MFC is the best option for you - but you don’t know until you have checked what else is out there.

By the way - I think you’re refering to GLFW (GLF is a toolkit for handling fonts under OpenGL, GLFW is a framework for handling OpenGL windows, timers and such). And since I am the author of GLFW, I will naturally claim that GLFW is the best toolkit out there, but that’s really my opinion, based on my needs and preferences (for instance, I really like my programs to be portable - GLFW is portable, MFC is not…). Ok, check http://hem.passagen.se/opengl/glfw/ to make your own opinion.

By the way… Did you notice that there is now a brand new forum here at www.opengl.org for discussing toolkits?

[This message has been edited by marcus256 (edited 02-07-2002).]

********** Furrage ************

I personally want to find the best way to implement my opengl stuff… It is a bit hard since there are many options out to choose from.
However, after programming for some time, I realized that depending on what I needed, different toolkits satisfy different needs.
For example, if you concerned with only hacking up opengl code and not concerned with the bunch of widgets that are platform dependent, I would use GLUT or GLW.
But for stuff like a game engine or image editor where you need a bunch of buttons and tabs and stuff, go for MFC since they provide a rich library for GUI development; although it takes a lot of time to learn it on your own…

Purely acking opengl code: (GLUT | | GLW);
Long term fully fledged GUI: (MFC);

************ Marcus ************

Marcus… You are the author of GLW???

Great job!!
Thank you providing our monetarily poor but rich in programming skills comunity with your time and talent…


Best regards, Miguel…

Yes there is a big deal, it depends on if you only want your program to run on a Windows based PC, then MFC + Direct sound(MS) + OpenGL.

But if you want to creat a program that will run on a Windows/Mac/Linux then SDL

SDL not only includes tools for OpenGL but also sound managment. SDL is targeted for multimedia applications and to be run on any system.

GLUT and GLU can be used with both MFC and SDL. You just use the parts of the GLUT and GLU that do not have a MFC or SDL command.

Originally posted by Furrage:
Okay, that seems straight forward so far. But I was browsing some threads and see people touting SDL and GLF over GLUT and the others. Is the difference really a big deal? Or can I continue to use MFC and not worry that I’m not using the best toolkit available. I just got started on VC++, OpenGL and MFC in my spare time and I’d hate to have to relearn the whole thing before I accomplish anything. Time isn’t on my side in this case.

OK so where do I get SDL? Also where do I get good tutorials for SDL?

SDL site http://www.libsdl.org/

nehe.gamedev.net has SDL tutorial versions of most of his examples.

Originally posted by Furrage:
OK so where do I get SDL? Also where do I get good tutorials for SDL?