I think there may be a better way to use immediate mode?

Avatar

I create a new `public class VectorGrapic : ImmediateModeShapeDrawer` for each "shape" I make,  and set it with a function so I can hook in my MVC,  this way I can control the properies and have multiple types use the same data.

Here's one example of a shape. 

```

public override void DrawShapes(Camera camera)
{
     switch (vectorShape) { 

        case Shape.RectangleBorder: 

                 DrawRectangleBorder(); 

       break;

     ...

}


private void DrawRectangleBorder(Camera camera) 

using (Draw.Command(camera)) { 

    Vector2 size = new Vector2(1f, 1f); 

    Draw.RectangleBorder(Position, size, 0.1f, Color.white); 

    Collider2D = new CircleCollider2D(); 

}
```

From there I have a view that takes a list of the `VectorGrapic` I've created and:

```
public override void DrawShapes(Camera cam) {
    using (Draw.Command(cam)) {
        for (int i = 0; i < polygons.Count; i++) { 

            polygons[i].DrawShapes(cam); 

...

```
I feel like I'm not doing drawing the shapes the best way I could be. 

Reporting a bug? please specify Unity version:
Reporting a bug? please specify Shapes version:
Reporting a bug? please specify Render Pipeline:
URP