Search Unity

Moblur on sprites

Discussion in 'Image Effects' started by SoftwareGeezers, Mar 2, 2022.

  1. SoftwareGeezers

    SoftwareGeezers

    Joined:
    Jun 22, 2013
    Posts:
    902
    I'm experimenting with the PP stack for the first time. I can moblur geometry and opaque textured quads but sprites and cutout/fade textured quads don't get blurred. As such, particle effects aren't blurred either.

    What do I need to do?
     
  2. GoGoGadget

    GoGoGadget

    Joined:
    Sep 23, 2013
    Posts:
    864
    You will need a motion blur effect that also works without motion vectors (ie. a true 'long exposure' effect) - the issue you are seeing is because the sprite shader doesn't write to the motion buffer. My own asset CUPP recently added a long-exposure based motion blur but it's for URP only, and only 2021.2 onwards.

    If you are keen to write your own solution, you'll basically need to manually keep a history of the last few frames you render, then blend all of them together each frame.
     
    SoftwareGeezers likes this.
  3. SoftwareGeezers

    SoftwareGeezers

    Joined:
    Jun 22, 2013
    Posts:
    902
    Yeah. Reading around, I see moblur on sprites basically isn't possible conventionally because the motion vectors don't know how to blend with different vectors on transparent surface. You can have a quad for a sprite moving one way, and the visible surface underneath using the other.

    As you describe, I could do full screen blur as it used to be done in the Olden Days on PS2 titles etc. ;) I hadn't actually thought about that but might give it a go now you've reminded me of the option.