How can I control a Post Processing Volume through Blueprints?

I would like to start the level off with the character opening their eyes.
I have an unbound post processing volume in the scene. How can a script the engine to sweep the auto exposure value from -2 to 0 while using the DOF from out of focus to in focus ( ie eyes opening effect) through blueprints?

You can use Make PostProcessSettings and Break PostProcessSettings nodes in Level BP.

What blueprint is considered a ‘Level BP’ ?

Im assuming a Controller

I meant Level Blueprint. You can open it via the drop down menu that appears when you press Blueprints button on top of the viewport.

Sp you’ve covered the where, Im still stuck on the how. I can use the BeginPlay event to initiate the change and timers from there. I can make a post process setting. How do i assign my new setting to my unbound post proccess volume?

Also how can I perform a SLERP on the auto exposure bias?

What graph components are needed in the Level Blueprint to make this possible? I cant find the component that holds the Global Post Processing node i made. Without knowing where to find it, I have no way of accessing it

Basically an example of what @Jacky mentioned in their answer.
Currently dealing with PostProsessing settings in BP’s is not very nice. (It gets very messy very fast.)

As there is no way to set individual properties in BP (For whatever reason)
You will need to get a ref to the volume, break the settings, pass all settings other than those you want to change to a set members node, (so those values remain the same) and then finally set any values you want that are different on the “Set Members” Node.

It’s incredibly ugly. I ended up writing a BP function in C++ that blended two volumes as it was less of a pain to do.

(NOTE: the error on the Set members node is because i got lazy and didn’t join all the Nodes. :stuck_out_tongue: )

So, is this still an issue? I mean, it’s been a while. Any new solutions to this? Or is it still this ugly? I’d like to control auto exposure and tint settings in a day night cycle depending on the current daytime.

So probably a bit late, but we’re currently on 4.7.6 and there still isn’t a decent solution.

I have found a somewhat more decent solution.

You can make a blueprint actor that just contains a Post Process Component.

Instead of adding a Post Process Volume to your level, you add this blueprint.

Then in the level blueprint you can manipulate the PostProcessComponent by accessing its target.

See screenshots:

The question was asked before we had post process as component in BP’s, so yeah, what you are suggesting is a better solution now.

This may be crazy, but would an Editor Utility Widget be able to handle this, like a PPPresetManager?

  • it writes the current PostProcessSettings + DirectLight + Skylight to a file (or maybe some kind of data asset)
  • it lists those that it finds in a folder (or a data asset) in a scrolling thumb slot grid or something
  • it has a Preview button to load the highlighted preset in the current scene, but it reverts back if not Assigned
  • it has an Assign button that can finalise the scene’s postprocess volume and direct light values, given a naming convention.
  • add a blueprint event for getting from the PPPresetManager and assigning by index to the level on the fly

Make PP variable inside your main HUD (ex; the widget that controls your line trace for objects)

Open Level BP and set that variable inside your widget as such (adding a delay to account for construct time)

from there you can manipulate the PP using the same tick function