You can. You can use a screen space blur in the realtime compositor on any object or mask of your choosing. To blur the actual texture, it needs to be baked. You’re arguing about (and against) the very nature of shaders, and I think it would help you to understand how this work’s elsewhere, like in substance.
What kind of renderer is that ?
My guess would be one with a rasterised buffer stage…
I’m not saying it can’t be done, I’m saying it goes against what a shader does, and needs to be designed for. A shader tells the renderer how something gets rendered in the camera, it’s not designed to execute pixel based adjustments. This has massive benefits and strengths, and adding a ‘texture editor’ in Blender would be a better idea than to attempt to bolt it onto the shader editor, which by its very nature isn’t currently set up to deliver an image export as a final product.
Edit: also, I’m done arguing about this. No convincing a devil’s advocate.
Well, I think what Michael was saying is that in cycles, OSL, GLSL/Eevee the shader is computed in the pixel but without knowing it’s surroundings…
And Blur is a great example where access to the surroundings pixels is needed.
Same for directional blur, edge detection, dilate/erode…
Obviously this isn’t a limitation every software have, but for blender since it’s part of the design of the renderer it makes it nearly impossible to implement, unless using dirty hacks.
Stuff like the AO node, or Bevel node use extra sample to get surrounding infos, but this costs a lot. Since for every regular samples you have to run say 16 AO samples, so for a 150 samples render you ran 2400 extra AO samples ![]()
On top of that this would lead to a noisy result anyway, in case of blur we would need a crazy amount of extra samples to get rid of the noise.
That’s why this : https://code.blender.org/2022/02/layered-textures-design/ is definitely going to be useful, since this relies on an intermediary bake it’s possible to do blur an many things impossible to do otherwise.
Also… there is an essential difference in the shader systems (and now i begin to understand why i did have difficulties to understand the shader thing in detail…because there are different…)
In one we can modify an given “object” with two transforms:
While in the other the modifications has to be done on a second object (my group using a spherical gradient and less or greater than…)… … (and we also can not instance this somehowt…)
So when even in Substance the blur is in fact a multiple positional warped of the input and “blended” together like someone can see here:
…


