(Short) Introduction for people not familiar with OpenGL at all
OpenGL was first introduced in 1998, versioned 1.1. Up to 1.5, it kept to fixed pipeline design, which was changed in 2.0. That was the biggest and the most essential change in its history. It divides the versions into "shaderless" (before 2.0) and "programmable" (2.0 and up).
The problem with it on StackOverflow
Apart from the most essential one, opengl-1.x. Why is that version so special? More often than not, when someone posts code that's 2.0 and up, he falls into the first category. It makes it really hard for answerer, explained below
Why is it so hard?
People posting questions using old, deprecated functions (tagged only opengl) most of the time do it for one of the two reasons:
- They just don't know about newer functions, but are eager to learn them and upgrade.
- It's an university assignment and the old and dusty professor is teaching old and dusty API, and pretty much nothing can be done about it.
As you can see, these two categories have totally distinct requested answers. While it's usually perfectly fine to recommend new functionality to the first one, the second one needs the solution within their limitations. However, it happens to be that the university students fail to tag these questions appropriately.
I am not very experienced in dealing with this type of issues, so I am asking the Meta community - isn't really something that can be done about it? I thought of something like a window popping up after typing in opengl tag, asking if the OP is limited to any specific version or fixed pipeline (thus, opengl-1.x or opengl-compatibility). However, I suppose that there might be even better ways to do that; better than having to ask in comment every time "Are you aware that the functionality you are using is deprecated?"