SC Screen Effects Documentation (v3)

Pending release

Documentation is a work in progress draft!

SC Screen Effects
Version: 3.0.0
Review

6.Scripting #

Familiarity with C# and OOP programming is assumed. Support cannot be extended to coding help. Some specific functionality and use cases really need to be handled on a project-specific basis with some creative thinking.

If you are using an assembly definition, ensure you add a reference to the sc.posteffects.runtime assembly, otherwise you won’t be able to access the namespace and classes.

All these functions have IntelliSense summaries, which can be viewed in your IDE, next to any overload variations. If necessary, each parameter is described there.

Quick Volume API

While working on a game you’ll often need to push effect overrides on the stack for time-based events or temporary states. This API provides the means to easily create new disposable volumes in the scene.

Volume volume = QuickVolume.Create(int layer, float priority, bool overrideAll, params VolumeComponent[] settings);

The last parameter takes an array or a list of effects you want to override in this volume.

Instancing a new effect is fairly straightforward. For instance, to create a Radial Blur effect and override its enabled & intensity fields:

var radialBlur = ScriptableObject.CreateInstance<RadialBlur>();
radialBlur.enabled.Override(true);
radialBlur.intensity.Override(1f);

Important! Don’t forget to call the QuickVolume.Destroy(volume); function when you don’t need it anymore.

Creating effects

It is also possible to create an individual effect, which you can then control. Internally, this also uses the QuickVolume API.

RadialBlur radialBlur = PostProcessingComponent.Create<RadialBlur>(bool addRenderer = true, bool overriden = false, int layer = 0, int priority = 1);

You can then freely override and control parameters, most importantly the main “intensity” parameters:

radialBlur.intensity.Override(1);

You can reference the included SpeedLinesComponent component script, which creates and controls a SpeedLines effect based on the objects movement speed.

Be sure to call the Dispose(); function on the effect when you don’t need it anymore.

When adding effects to a Volume in the editor, default textures will always be loaded in (if it uses some). For effects created through script this is never the case, be sure to check if an effect requires textures to work and assign them by overriding the related parameter.

 

Yes No Suggest edit
Last updated on September 25, 2026
0 of 0 users found this section helpful
If you're familiar with this asset, please consider leaving a review!
Your support is what makes complementary updates possible!
Suggest Edit