# Change Default Post-Processing Stack Effects Order

**URL:** https://discussions.unity.com/t/change-default-post-processing-stack-effects-order/748074
**Category:** Post-Processing
**Tags:** Shaders, Post-Processing
**Created:** [June 21, 2019, 11:15pm UTC](https://discussions.unity.com/t/change-default-post-processing-stack-effects-order/748074 "2019-06-21T23:15:54Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![Retruate](https://dub1.discourse-cdn.com/unity/user_avatar/discussions.unity.com/retruate/32/184225_2.png) [@Retruate](https://discussions.unity.com/u/Retruate)
#### Post date: [June 21, 2019, 11:15pm UTC](https://discussions.unity.com/t/change-default-post-processing-stack-effects-order/748074/1 "2019-06-21T23:15:54Z")

</div>

Hello,

I have been writing some custom effects for the post-processing stack for my game. The [custom effects guide](https://github.com/Unity-Technologies/PostProcessing/wiki/Writing-Custom-Effects) says that you can order your effects per post-processing layer, which I have done, and that built-in effects are ordered automatically. However, I want to be able to change the order of all the post-processing effects, so that one of my custom effects can be run before or in-between the built-in Unity effects. Surely this has to be pretty easy, but I can’t find where Unity has opened it up to let you change the default order. I think I could accomplish what I want with CommandBuffers, but I’m not as familiar with the post-processing stack as I am with other parts of Unity so I don’t want to mess with it and risk it breaking down the line.

I suppose a workaround could be to copy Unity’s effect(s) or write my own and use it as a custom effect instead of the default one, but that sounds horrendously unconventional.

Apologies if this is something simple that I have just overlooked. Took me a while to find custom effect sorting even though it was just under my nose on the PP layer.

Thanks!,  
John

---

<div class="post-metadata">

### Author: ![tomekkie2](https://avatars.discourse-cdn.com/v4/letter/t/73ab20/32.png) [@tomekkie2](https://discussions.unity.com/u/tomekkie2)
#### Post date: [February 13, 2021, 10:32am UTC](https://discussions.unity.com/t/change-default-post-processing-stack-effects-order/748074/2 "2021-02-13T10:32:30Z")

</div>

Did you find a solution?  
I have also written a selective custom effect and I am wondering how to manipulate with its order.  
The custom effect template does not seem to provide an option to set an order variable, even with a limited options (BeforeStack, BeforeTransparent and AfterStack).

```csharp
using System;
using UnityEngine;
using UnityEngine.Rendering.PostProcessing;

[Serializable]
[PostProcess(typeof(GrayscaleRenderer), PostProcessEvent.AfterStack, "Custom/Grayscale")]
public sealed class Grayscale : PostProcessEffectSettings
{
  [Range(0f, 1f), Tooltip("Grayscale effect intensity.")]
   public FloatParameter blend = new FloatParameter { value = 0.5f };
}
public sealed class GrayscaleRenderer : PostProcessEffectRenderer<Grayscale>
{
   public override void Render(PostProcessRenderContext context)
  {
       var sheet = context.propertySheets.Get(Shader.Find("Hidden/Custom/Grayscale"));
       sheet.properties.SetFloat("_Blend", settings.blend);
       context.command.BlitFullscreenTriangle(context.source, context.destination, sheet, 0);
  }
}

```

This is the template from [Writing custom effects | Post Processing | 3.0.3](https://docs.unity3d.com/Packages/com.unity.postprocessing@3.0/manual/Writing-Custom-Effects.html)

---

<div class="post-metadata">

### Author: ![elisetong95](https://avatars.discourse-cdn.com/v4/letter/e/53a042/32.png) [@elisetong95](https://discussions.unity.com/u/elisetong95)
#### Post date: [May 21, 2022, 3:18am UTC](https://discussions.unity.com/t/change-default-post-processing-stack-effects-order/748074/3 "2022-05-21T03:18:03Z")

</div>

> [@tomekkie2](#):
>
> Did you find a solution?  
> I have also written a selective custom effect and I am wondering how to manipulate with its order.  
> The custom effect template does not seem to provide an option to set an order variable, even with a limited options (BeforeStack, BeforeTransparent and AfterStack).
> 
> ```csharp
> using System;
> using UnityEngine;
> using UnityEngine.Rendering.PostProcessing;
> 
> [Serializable]
> [PostProcess(typeof(GrayscaleRenderer), PostProcessEvent.AfterStack, "Custom/Grayscale")]
> public sealed class Grayscale : PostProcessEffectSettings
> {
> [Range(0f, 1f), Tooltip("Grayscale effect intensity.")]
> public FloatParameter blend = new FloatParameter { value = 0.5f };
> }
> public sealed class GrayscaleRenderer : PostProcessEffectRenderer<Grayscale>
> {
> public override void Render(PostProcessRenderContext context)
> {
> var sheet = context.propertySheets.Get(Shader.Find("Hidden/Custom/Grayscale"));
> sheet.properties.SetFloat("_Blend", settings.blend);
> context.command.BlitFullscreenTriangle(context.source, context.destination, sheet, 0);
> }
> }
> 
> ```
> 
> This is the template from [https://docs.unity3d.com/Packages/com.unity.postprocessing@3.0/manual/Writing-Custom-Effects.html](https://docs.unity3d.com/Packages/com.unity.postprocessing@3.0/manual/Writing-Custom-Effects.html)

Did any of you find a solution? Kind of curious what could be done to re-sort everything all together.

---

<div class="post-metadata">

### Author: ![GoGoGadget](https://dub1.discourse-cdn.com/unity/user_avatar/discussions.unity.com/gogogadget/32/885267_2.png) [@GoGoGadget](https://discussions.unity.com/u/GoGoGadget)
#### Post date: [May 27, 2022, 5:11am UTC](https://discussions.unity.com/t/change-default-post-processing-stack-effects-order/748074/4 "2022-05-27T05:11:41Z")

</div>

Have you tried shuffling the order of the effects on the volume component?

---

<div class="post-metadata">

### Author: ![a52](https://avatars.discourse-cdn.com/v4/letter/a/7993a0/32.png) [@a52](https://discussions.unity.com/u/a52)
#### Post date: [October 25, 2023, 10:04pm UTC](https://discussions.unity.com/t/change-default-post-processing-stack-effects-order/748074/5 "2023-10-25T22:04:53Z")

</div>

> [@GoGoGadget](#):
>
> Have you tried shuffling the order of the effects on the volume component?

This does not seem to do anything.
