I have a 2D Lit scene, in which I am trying to apply a bloom effect on a single object in the scene using the URP ‘Volume’ Component. The bloom effect shows up in the game, but it shows up applied to every object, not just the ones I want to have bloom, even if I mark the Volume mode as “local,” increase the blend distance until the effect reappears on the object, and put a box collider around the object.
How do I get the bloom to only appear on this one object?
Thanks for your help!
Do you want something like emissive? You have a shader/material that hits the bloom’s threshold easily. That way, you don’t need to lower the bloom’s threshold too low that it starts affecting all the objects.
A dev provided a shader example here:
You don’t have to use a secondary texture either. You could create a shader that multiplies its MainTexture’s colors by 2 and achieve similar. That object will glow b/c it surpasses the bloom’s threshold whereas other objects with Sprite-Lit-Default won’t.
Try giving a shader graph a different HDR Color property on the Blackboard that you can customize per material. If you’re using SRP Batching (2023+ for 2D Renderer, if you’re using that), then there’s not much cost for multiple same-shader materials.
Or, use a bright HDR color white and just tint it with the SpriteRenderer.color, though this will tint the rest of the sprite unless you turn that off and customize where to apply the tint.