Any great websites to learn GLSL python for Blender?

I am fairly experienced in BGE python after 11yrs of use with Blender. But are there any great, non-convoluted websites in text and image formats (kinda like blogs) that will teach me how to do great GLSL special effects and what shader attributes, and how to properly write a fragment and vertex shader?

I dont know where to start, and when an error comes up in the console, I just get the classic “-- [Shader type] failed to compile --”, which gives less info than what I get with traditional python.

I’m talking about Blender 2.79b, not 0
3.

4 Likes

Blender related: https://en.wikibooks.org/wiki/GLSL_Programming/Blender

General GLSL related: https://gamedevelopment.tutsplus.com/tutorials/a-beginners-guide-to-coding-graphics-shaders--cms-23313

BGE/UPBGE related: https://web.archive.org/web/20170925210305/http://coredoc.royalwebhosting.net/api/filter2D.html

4 Likes

Thanks. That was able to teach me quite a bit. Is there a vertex equivalent to that fragment book?

What about Vertex Shaders?

Some decent Vertex Shader examples here: https://github.com/mikepan/GameEngineBook/blob/master/text/05-Graphics.md#a-useful-vertex-shader-
Please note that GLSL has changed and so that in some areas may not be compatible with legacy UPBGE and current UPBGE has a much different OpenGL/GLSL structure.

Also, the Blender GLSL wiki link I shared above also has Vertex Shader examples in several sections.

1 Like

Since the spec has been depreciated (openGL)
Blender moves to vulkan soon, and devices soon may have no legacy openGL driver, but apparently Mesa can emulate openGL on vulkan using a abstract layer called zinc.

What does this mean to people who code glsl?

No new syntax until we hop to vulkan!

Composition node system, if robust enough should be able to make most filters.

Do M1 iMacs support Vulkan? I would expect they do…

No, metal and openGL only I think.

To my knowledge, not yet. But that’s mainly because M1 chips are still very new in the industry. Support should be more plausible in the future. As you can see here, Vulkan is support on most older (and some newer) Apple devices, but through 3rd-party libraries/software. A good example of one of the library software’s that may be used as one of those 3rd-party software libraries is MoltenVK, as mentioned in this issue.

I will just go with the GLSL version of UPBGE since I’m on M1.

Wouldn’t there be two versions of UPBGE - 1 which is standard openGL/Metal and 2 - the Vulkan one? Or would they be merged? I hope they will not be merged…