I want create a simple 2D game in Unity3D, in which one of the entities has to grow and shrink. This is done by merging simple shapes.

A rough example in the picture below just to show what I mean:

![Image](https://i.stack.imgur.com/AvTvv.png)

It grows by adding components and shrinks by removing them. There will be a lot of entities on the screen so the performance is very important. 

Is it possible to change dynamically the shape of one gameobject? If not, which of the following solutions is more suitable and why?

1. Constantly add new gameobjects (shapes) to the previous one and then remove them?
2. Create an animation. In this case is it possible to change the animation speed at runtime so for example first it grows faster and then grows slower or shrinks? My issue is whether the change of speed will apply to the whole loop of the animation or is it possible to apply it in the middle (so that the speed of shrinking and growing is different)? I would prefer the latter to happen.

If you have any other suggestions I'd be glad to hear them.