I have only yesterday started to learn OSL. Since OSL tutorials are scarce in Youtube, I am beginning to wonder if OSL is becoming obsolete as I get the impression that it is overshadowed by OpenGl. I am confused.

Now, I want to know if I should drop OSL and learn OpenGl instead - or learn both. I want to do many things with the languages, for example: making textures, physics simulations, mechanics, etc.

  • 3
    $\begingroup$ Hi. Please explain what your goal of using one of these languages is. $\endgroup$ – Ray Mairlot May 13 '19 at 12:43
  • $\begingroup$ I want to do many things with languages: for example, making textures, physics simulations, mechanics, etc. My interests are varied. For now, I want to try making geometric shapes and textures in either language, but I don't know how. I'll try to order a few books. I want to experiment script nodes with other nodes and it is for learning purpose only. Recently, I have been scrapbooking patterns and collecting others' works for this book in link: docs.google.com/presentation/d/… Screenshots are study purpose only. $\endgroup$ – Rita Geraghty stands by Monica May 13 '19 at 18:59

Short answer is: (probably) neither

OpenGL is a framework for writing (not advanced) render engines, such as the Blender solid shaded viewport. It's pretty powerful, but isn't really useful to know as an artist.

OSL was designed by Sony to be a powerful, versitile language for creating Shaders at a fundamental, mathematical level. It's supported by quite a few notable production quality render engines, and is used widely in the VFX industry to create otherwise challenging shaders.

Fortunately though, Cycles Render has a quite excellent shading node system, so it's not really a nessesity at all. As a solo artist it's not something you should spend time learning, but if you plan on doing shading/LookDev for as a career in VFX, it would be fantastic to know.

I would recommend to actually learn a program called Substance Designer, rather than OSL or OpenGL. Substance Designer is a node-based software for creating procedural textures and materials, which are compatible in any render engine. Not only can Designer be used to make extraordanarily detailed and realistic materials, it supports MDL (material definition language) creation. MDL is becoming more and more recognized, and is starting to be implemented in more and more render engines. So yeah, learning Substance Designer would give you some extremely powerful knowledge, and it's safe to say it will keep it's relevance for a long time.

I hope this helps!


Neither of these affect anything other than rendering, texturing, and shading, so if you want to be able to do other things in Blender like procedural modeling, simulations, creating add-ons, and things like that -- Python is definitely the right choice.

  • 1
    $\begingroup$ Thank you very much for insightful answers. You have given me something to think about. $\endgroup$ – Rita Geraghty stands by Monica May 15 '19 at 10:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.