views:

479

answers:

7

Hi All,

I am inspired to start programming some things in OpenGL, using c++.

Can anyone list here what tools should be installed to start this process.

Ie

IDE Compiler OpenGL download etc?

Thanks

+1  A: 

You may want to have a look at the NeonHelium OpenGL tutorials

wich
+3  A: 

No special OpenGL-specific compiler or IDE should be needed. All you need is a C++ compiler. VisualStudio Express Edition C++ should be able to do it. You can also go with NetBeans or Eclipse, both of which have C++ editions now. They may also have OpenGL plugins, specifically, I recall hearing about a GLSL shaders plugin for NetBeans (but that was a while ago, so that info may be out of date). Don't forget to check out the OpenGL SDK page, which also has some good tools and references.

The main OpenGL site is also a good resrouce to start with: http://www.opengl.org/ (and someone else mentioned the NeHe tutorials - they're also great!)

FrustratedWithFormsDesigner
A: 

CodeBlocks + GLUT:

http://www.sci.brooklyn.cuny.edu/~goetz/codeblocks/glut/

Manuel
+1  A: 

The following three IDEs are very usable, and can all be used for c++ OpenGL development. Qt is more of a cross platform framework, but all can be used to develop glut based OpenGL apps.

Chris Becke
+7  A: 

The Ne-He tutorials (to which wich has already kindly provided a link) are quite good.

glut, however, I'd generally avoid. It has a fair number of bugs, and nobody's working on fixing them (the current version is 3.7, which claims to be at a "late beta" stage -- and has been for over 10 years now).

A couple of alternatives to glut (both apparently in active development) are GLFW and FLTK. Between these, GLFW is much closer to glut in character -- a small toolkit for abstracting away most of the OS-dependent parts, so you can produce OpenGL programs with relatively little hassle. FLTK is really a full-blown GUI toolkit (though rather small as GUI toolkits go) that has a built-in glut emulation (that, at least the last time I played with it, seemed considerably better implemented than glut itself).

Edit: looking at the web page, it looks like calling GLFW's development "active" might have been something of an overstatement. It was last updated in 2007 -- though it doesn't seem to me like it needs a lot more work like glut does.

I suppose I should also point out one more alternative to glut: freeglut is a free re-implementation of the glut API. I can't say I really recommend it, but at least it's better than glut.

Edit2: When/if you decide you want to play around with shaders, both AMD/ATI and nVidia have developer web pages. nVidia's, in particular, has a huge amount of free "stuff" available (just beware that it's easy to burn all too many hours playing around with some of their demos and such).

Jerry Coffin
+1 for FLTK. I'm goingto have to check that out now.
FrustratedWithFormsDesigner
A: 

Stay away from GLUT it is a crutch at best, you really need to learn how to use the OpenGL Api's directly to do high performance graphics. Also alot of the NeHe tutorials are old and outdated. There are lots of new Api's for the newer graphics cards that those tutorials don't cover.

fuzzy lollipop
What's in GLUT that will prevent him from using the OpenGL API directly? Also, I think it will be important for the OP to learn the fundamentals of OpenGL before he learns the "new APIs".
Manuel
The Ne-He tutorials certainly aren't the be-all and end-all, but I think they're a reasonable *starting* point for somebody with no OpenGL experience at all.
Jerry Coffin
A: 

Here is my piece of (a former OpenGL toyer's) advice on the choice of libraries and tools (as for the compiler, you can just use any free modern one out there (i.e., gcc or VSExpress C++)):

  1. Do not forget to look at GLEW (The OpenGL Extension Wrangler Library) or GLee (GL Easy Extension library), especially when / if / not to be stuck with more modern OpenGL features (including advanced shaders).

  2. Something named like Shader Debugger will probably also be of great benefit when toying with shaders, as it will give the opportunity to see shader effect immediately without even compiling any C/C++ sources.

  3. Looking at the "traditional" (covered in the (free now) "Red book") functionality from the modern (i.e. shaders again:)) viewpoint may also be enlightening, the "Orange book" ("OpenGL Shading Language (3rd Edition))" has a chapter on emulating OpenGL fixed functionality with shaders.

mlvljr