I’m pretty late on reply, not sure if you’re already set up, but if you say you’re new to OpenGL, I recommend the LearnOpenGL tutorial site. It’s a very nice tutorial that gently helps you set up and get OpenGL code running.
mhagain’s link is very detailed, but I think it’s very hard to learn from for someone starting off. Looking back it at now, the ideas of “OpenGL context creation” and “getting functions” make a lot of sense to me, especially now that I know that those topics are separate from the OpenGL API itself. But when I first saw those, I thought it was too daunting/hard to try to understand (I was still new to C/C++ at the time. I was interested in trying out a graphics API to at the same time. I had no experience with window management API’s like Windows API and GLFW, or with the idea of static and dynamic libraries.). If you’re very comfortable with C/C++ and window management APIs already, I’d say go ahead and use it. If it doesn’t work out well, I recommend the LearnOpenGL tutorial to just get something running, and maybe later on, come back to that link if you’re looking for more low-level details.
When you say “need to install and download which programs”, I’m guessing what you’re asking about is general installation details. With OpenGL, you don’t need any specific software that you need to buy online. You should be able to set it up for free. With the right development tools set up (you have Visual Studio 2017, that’ll work fine), you need the proper static and/or dynamic libraries (and with dynamic libraries, you need the matching import libraries to link to when you’re compiling your application). Some libraries are gotten from updating your graphics card drivers and getting the proper .dll files that contain OpenGL implementation code . Others are gotten by downloading/installing what’s needed from your windows management API (for example, with GLFW, you need to do a bit of set up with CMake to get the proper static or dynamic libraries to link to your OpenGL application).
Overall, installation-wise, it’s a process of getting the right libraries and properly setting up your development tools to link to these libraries. Then you write OpenGL code, build, and run. Other than that, here’s a summary of the process of writing OpenGL code to add to some installation details:
Set up and write code to get a window appearing on your screen.
Set up and write code to get what’s called an OpenGL context on your window. (a “context” here is an abstract term meaning whatever’s needed to display OpenGL drawings on your computer, including the actual visual stuff, and data stuff)
Based on what version of OpenGL your graphics card can run, find and load the proper OpenGL functions, and use them to write OpenGL code that communicates with the OpenGL context to make drawings appear. (To figure out the latest version of OpenGL your graphics card can run, you can either do it by manual code, or download something to find it for you. The OpenGL Extensions Viewer for Windows is a free tool to do this. In the link I gave you, click the blue button that says “OpenGL” to download the tool. The tool is also mentioned in the link mhagain gave, in the “OpenGL Viewers” section.)
Hope that gives you some useful info. I admit I didn’t give you specific instructions to get something running, but setting up OpenGL is a pretty extensive process. I thought the best I could do for now is link you a beginner-friendly tutorial for getting set up. It’s how I first started OpenGL, so if you’re stuck on setting up with that tutorial or if you’re more curious about certain things, you can reply back here about them. Also, I put a lot of specific terms in this post. I don’t know how familiar you are with C++, but since you specifically mention you want to program in C++11, I assume you’re already familiar with C++ to know what standard you want to write code with (it was a long time since I started C++ before I realized that the “11” there was referring to the standard released in 2011, haha). Nonetheless, if you’re wondering about any of those terms, you can reply about those too, and I can try to say more about them.