"distortion shader buffer"

this is what I have so far, (it’s like a blur over frames using a back buffer)

next is to pass a 2d vector ‘travel direction’ so the waves will propagate only 1 way / cancel each other out etc.

1 Like

working shader :smiley:

I know GLSL !



1 Like

Gravometric Distortion

1 Like

And Good night :smiley:

1 Like

:open_mouth: Amazing BPR! :hugs:

1 Like

Here is bloom and distortion in the same file :smiley:

1 Like


1 Like

:scream: Hey! that looks very very good! :open_mouth:

1 Like

noticed a error, tracked it down,

Mix RGB chops off negative values.

Vector math does not :smiley:

1 Like

Cool! These temporal effects looks really nice and seem to be a good opportunity to learn a little bit GLSL :+1:

I’ve always admired the shader works around here (and on shadertoy), but never learned to write these from scratch.

  • Do you have on of the above examples as *.blend which is a nice starting point to dig a little bit into the code?

  • With respect to your noticed error: I remember having an unexpected behavior in a node material once which I was able to track down by exporting the automatically generated (Blender internal) shader to a file and looking at it. I think it was from gpu module, not 100% sure. It was doing unexepcted color space transformations which messed up what I was trying to do.

  • Are you using specific UPBGE features or does does it work in vanilla BGE as well?

Keep it up!

this is using render attachment buffers for Distortion buffer, and bloom buffer.

it’s in recent upbge master,
I have a win64 build I built, and a linux build someone built for me if you need a link.

1 Like

I normalize the distortion buffer now, so it’s a bit more predictable how the wave travels.

1 Like

1 Like

Did you try to make a censorship effect? it would be interesting