I am a beginning to enter the world of game development.

Lately, I researched that "OPENGL" is one of the tools to use in graphics, then I found out about "SFML" (I think that its a library or something that uses opengl).

I am so confuse because all books/ sites said using "GLUT", but many people/fellow developers said that I must use a more updated one like "SFML" but sfml has few/none tutorials.

What I am trying to say is "how to create own library or something like your own glut or sfml", and why does opengl has no source code? And how can I use the EXACT(not glut/sfml) opengl in my c++ program?

I am so confuse....

  • \$\begingroup\$ I don't really get why you rather build your own library because SFML 2.0 tutorials are scarce. It doesn't take much to learn SFML at all. It has simple examples to get you started and a forum where you can ask questions. \$\endgroup\$
    – Sidar
    Oct 6, 2012 at 14:36
  • \$\begingroup\$ well, honestly your right (I really don't know myself thinking about creating own library) :) In the sfml 2.0, it doesn't support the latest version of opengl 4.3 \$\endgroup\$ Oct 6, 2012 at 14:54
  • \$\begingroup\$ It probably will later on. Besides SFML works best at 2D stuff. 3D is not out of the question. But Irrlicht,Ogre3D, etc. Would most definitely be better for 3D. Why worry about OpenGL 4.3 btw? Are you really going to use its features? SFML probably isn't using it yet because the features are not relevant. \$\endgroup\$
    – Sidar
    Oct 6, 2012 at 17:47

1 Answer 1


OpenGL is just here to provide a link between your code and your graphics hardware, and to get it possible to OpenGL to draw on screen you have to create a rendering context.

GLUT and SFML both create this rendering context, in a portable way.

GLUT hasn't been updated for too long and shouldn't be used, you should use SFML or GLFW for example.

OpenGL can be used in a lot of ways, that's why it must be learnt separately, all it needs to work is a rendering context (like SFML's Window).

  • \$\begingroup\$ I find many knowledge in your answer. Rendering Context? What is it, and is it even platform-specific and what is the product of using rendering context? \$\endgroup\$ Oct 6, 2012 at 14:45
  • \$\begingroup\$ I'll take the example of Windows. You first got to get a Device Context, this is what let you draw in a window, then you need to create a Rendering Context to let OpenGL have access to this drawing area. This is a very simplified explanation of the steps you have to go through. The process of creating a drawing area for OpenGL is platform specific, but OpenGL itself is not. \$\endgroup\$
    – Whiskas
    Oct 6, 2012 at 14:56
  • \$\begingroup\$ Now I understand (a bit), First of all, Thanks for taking time for my questions. I find myself that I must master C++ before venturing in opengl, thank you, hope to meet you again online when I finish my first game :) \$\endgroup\$ Oct 6, 2012 at 15:05
  • \$\begingroup\$ Here's a good link for a modern OpenGL tutorial (most of the tutorials are deprecated and make use of the fixed function pipeline) : arcsynthesis.org/gltut I'm looking forward to your game :) \$\endgroup\$
    – Whiskas
    Oct 6, 2012 at 15:08

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .