How can I create a radial animation around a game object?

I want to create the radial/circular animation seen in the .gif x.com. How can I achieve this?

The simplest solution would be just do this animation in shader, the drawback of this solution you might need create material instances or use https://docs.unity3d.com/ScriptReference/MaterialPropertyBlock.html to store property that would track animation progress.
Steps are simple:

  1. Create shader that samples circle texture and cuts-off center depending on lifetime property using uv coordinates.
  2. Update lifetime property through script

Other solution would be drawing two circles and using on of it as mask, this way it would be less clean, but you could use same material.

Thanks for the breakdown. I am quite new to shaders (I know simple gradient stuff). This is quite a step up for me. I would really appreciate some further details and probably some code to make it more understandable, if need be.

1 Like

This takes a quad and renders a circle. How can I make this shader animate the effect I want?

By animating a value on the shader which adjusts the circle edge(s), along with the quad itself. Could use a particle that spawns a single quad and use the partice’s alpha or custom data to animate the inner circle edge in and out.