Trigger Post Process on Begin Overlap

Hi guys,
I want to add a post process effect to an actor. When the player overlaps the sphere radius, the effect begins to play. For this I set this blueprint - and it kind of works. But only for a single tick. After this, the effect disappears.

How do I change this? Is a begin overlap the right method or do you recommend something else?
And a second question - is there the possibility to fade the effect in an out?

I added a sound that’s getting louder when the player comes closer to the actor. The same thing with the post process effect would be great, too!

Thanks for your help and have a nice day :slight_smile:

Why don’t you just put another post process volume in the scene with custom settings? Just make sure it has ‘Infinite Extent (Unbound)’ option unchecked. The fade effect should work out of the box.

the easiest method to get the desired effect in my opinion would be to use post process blend weight and a timeline. the drawback here is that you need to setup everything beforehand and the transition is set. there is another method where you can set the blend based on the distance to the other actor but its been awhile so ill have to try to work it out again, im pretty sure its based on tick though.

anyways in the picture below you will see how i set it up. on overlap with another third person character (you could set this to whatever you like) it plays the timeline from the start. the timeline is just a simple 0-1 value over 1 second, and the update just sets the blend weight. on end overlap we do basically the same thing but reversing the process. now for this to work you will need to set the post process settings for the characters camera to your desired effect and you will also need to set the initial blend weight to 0.

Because I have multiple actors placed in the world and it would be nice to have this centralized.
Sure, I could add many post process volumes to the characters, but this wouldn’t be so practical - or do I get something wrong?

Thanks for this great answer and I think I’ll use this method. It’s good enough doing it this way - so no need for a tick.

But one question about your solution - how do I get this camera values like you have on the right side?
Maybe I should say at least a bit more about my setup. I have several, stationary characters placed in the world. All inherit in a blueprint - these actors have a sphere trigger as shown above.
How do I talk to the post process volumes?

Actually, I have already multiple post process materials in use, which are important for the overall look. So I have to call a specific post process volume.

Thanks for your help!

to get the camera values in the details panel all you need to do is select the characters camera component, in this case i was working in a third person character (of course you will need to be modifying values in the players camera). i made a few adjustments to the script and posted it below, if your using it in an enemy bp then you could use the setup below, if your using it in the character bp then the above may be better. you may also want to add in some checks as well to make sure that the timeline doesnt called if multiple enemies begin overlap.

so the way this all works is that it doesnt mess with your post process volumes in your level it modifies the post process settings in the characters camera which blend out and end up overriding your scene post process. if your scene post process is vital to the look of your game this may not be the best way to go.

You are perfectly able to attach a post process component inside your actor’s blueprint. Make sure it’s parent is shape (sphere, box or capsule) collision to provide volume data. The hierarchy should look like this:

1 Like

Oh. And one more note. I would definitely go with multiple post process volumes. If you’ll have multiple different objects modifying your global post process volume at runtime, there’s very high risk that you end up losing control which object made current changes. Remember the KISS rule: Keep It Stupid Simple. From ‘code organization’ point of view it’s way better to have multiple PPV’s having their own settings than one global volume being changed by multiple objects (which probably shouldn’t even know about that volume’s existence).

Thanks for your screenshots - you are a great help!
This method will become handy.

You got me with the KISS rule :smiley:
It works pretty good (okay, the material isn’t fading that good).

Thanks for your great help!
Have a nice day!

this was INCREDIBLY HELPFUL, THANK YOU!