New to graphics! Help! OpenGL shader practice and GLSL - what order to learn these?

Hello all wonderful openglers,

I have a burning question about the world of opengl and shaders. I have recently learnt about OpenGL and GLSL shaders and would like to deeply understand and master them.
The world of computer graphics however is incredibly huge and trying to do things in a way that makes sense is difficult

…as in simultaneously trying to manage the practice of maths and opengl and shaders all together.

I have an ok understanding of c++ and would like to push it further by learning opengl.

My dilemma is this…
I have seen the incredible art that shaders produce and would like to replicate it - so as to learn glsl and fragment applications completely but I also want to learn opengl at the same. I know that openl is essentially the engine on which glsl shaders run on but I wish to know the best method of studying these two. Should I simultaneously learn opengl, alongside shaders - building up the graphics pipeline from examples in books and online WHILE I practice and master fragment shader art.

OR do you suggest that I learn the opengl pipeline first and when I have learnt that - focus on the shaders. It seems books like “book of shaders” solely focus on the fragment shaders but I feel there is much more to explore in the world of opengl based art that it’s not just enough to learn fragment shaders - there are amazing works from vertex shaders too.

Please could you give me your opinions and advice, thank you, I am a newbie creative coder baby in this huge world and would like to have some ideas on how to proceed!

Thank you so much,
I hope I have made myself clear

I am just beginning myself, and from my experience, learning vertex shaders and fragment shaders are pretty much necessary to start programming at all in opengl, so might as well pick those up first.

here’s a great website, for intermediate to advanced shader stuff:

I have started a youtube channel devoted to exploring my learning experiences with opengl, and the main website that’s helped me get started is here:

and here’s a shameless plug for my youtube channel:

I really am excited about shaders, because they are very similar to C programming, and they seem to be great. One video in particular, that I kind of jumped into fragment shaders is this one from my channel:

I hope some of this helps point you in the right direction.

Write back, thanks,


Hello :),

First of all, thank you very much for all of the links; the link for the opengl tutorials look great and I believe they will help me greatly. I have made a simple hello triangle, but would like to expand this knowledge further by progressively adding to it.

Also - I will keep your videos there for reference.

The examples from shader toy, I must say look very complex and it seems that you need to be able to describe 3d models with pixels etc… I am new to this idea. Do you know where I can pick these skills up from? I mean I get the concept of passing vertex arrays to a shader and acting on that data, what seems more intriguing and harder are the 3d models and scenes created DIRECTLY in the pixel to pixel operations - within the fragment shaders.

I am really excited about learning this stuff. Nice to see you making videos about it, really helps to explain it to other people - one can learn a lot from that. I hope to see more things that you have produced from this.

Sorry for a late reply, I only get so much free time to write back.

Thank you once again!