How to implement sonic style Rolling/Spindash,How would I implement a rolling feature for the player in unity?

I’m a fairly new to unity, but I’m trying to learn more about the program. To this end, I’m attempting to create a sonic clone, but I’m really stumped on the rolling mechanic. The only way I know how to implement something like this is to make it so the player changes from a box collider to a circle collider, but I don’t know if that’s even possible. I tried to look up some tutorials to see if I could find something on how to do it, but haven’t found anything. So I thought I’d make a post here to see if anyone could help. ,I’m somewhat new to unity, but in an attempt to expand my knowledge within the program I wanted to make a sonic clone. Something that’s got me stumped is the spindash/rolling mechanic. I don’t know how I would implement something like this within the game. The only way I can think to do it is to change the player’s collider from a box collider to a circle collider, but I’m not sure how I would go about doing that, or if it’s even possible. I tried looking up tutorials on how to do it, but haven’t been able to find anything. I was hoping someone could help me here.

first add a box collider and a circle collider, disable the circle collider then use gameObject.GetComponent<>(BoxCollider).enabled = false and gameObject.GetComponent<>(CircleCollider).enabled = true on your player