Addding Shockwaves in BGE/UPBGE?

How do i add/create this shockwave effect ?? With the physics of course :grinning:

1 Like

Here’s a tut from Thatimist3r

I have have seen this tut before , but the problem is no physics in that one :frowning: , i mean when the shockwave hits an object it go above it , hope i am understandable

1 Like

Did you install UPBGE ?

1 Like

If yes , then be ready for downloading Battlship3D V0.02.blend :smiling_imp::smiling_imp:

1 Like

Ok, I re-watched the video and what it looks like is the creator had a sphere that had a refraction shader, so as it got bigger it refracted everything it went past, also as it getting bigger, it would allow it to go up mountains, hills, etc.

You can use attachments and make a screen space distortion buffer

In 2.8x these are Called AOV but are like 90% finished for eevee


since when is a shockwave a ring/torus?

Make a sphere, spawn when needed scale when it needs to, with a collision sensor and use python to go trough the hitObjectList(). apply a force or damage and done.

For visuals just use a texture. no need to call upon a heavy render.

#edit not meant for @BluePrintRandom

1 Like

Screen_distortion_adding_Bloom.blend (2.1 MB)

Use the collision & ray sensors in a Python script that –

On Collision:
    Collided Object's (Z) position = Ray"s hit position + 1

– this is fake code (^) but you get the idea hopefully.

The number 1 would be the distance you want your object to be above other objects.

Also, I’d advice you to make your own simple Halo Shockwave texture by using 2 simple cylinders & a mask (or) boolean modifier.

1 Like

Here the shockwave i mentioned, slap on a texture (not needed) to make it a bit nicer(higher poly sphere will make it nicer as well).

shockwave with physics simple.blend (568.0 KB)


Thanks mate , i’ll check it out

Hey, do you think you can make a version of this compatible with BGE?

it uses bgl_DataTextures (attachments) - or ‘Aov’ in 2.92x / upbge 0.3.0

so it’s not backward compatible. (I put the objects normals into the buffer in screen space and blue is ‘magnitude’)
maybe you could do it with GLSL ?

1 Like

I tried that, and it just had the objects colors

Wait, maybe you can convert the node tree, maybe that way it is cross compatible?

attachments are a type of ‘output’ from a nodegraph

they are in upbge 0.2.4 + 0.2.5

there is ‘aov’ in upbge 0.3.0 that do the same thing.

they render into a offscreen buffer

Hmm, I did see at the end of the node tree that there was something unidentified all in red. I assume that way what rendered to the buffer right?