How can I easily get the vectors of the highest, lowest, at left, at right points in any rotated or not gameObject?
This should work for your cases quite well:
The returned Bounds has a min and max property which will return the AABB min and max value in all 3 axes. Since you’re in 2d just ignore the z value ^^
edit
If you need the exact point there’s no way around testing all points manually. Depending on what your GameObject is made of it would require a different approach. Basically all will come down to using transform.TransformPoint to get a local space position into worldspace. Then just iterate through all points to find the one with the lowest / highest x / y value.
As Bunny83 wrote, you should iterate over all vertices and using transformpoint on each of them.
Using Linq you can do this:
float minY = transform.GetComponentsInChildren().SelectMany(m => m.mesh.vertices).Min(v => transform.TransformPoint(v).y);
It iterates over all meshfilters in all children, selects all their vertices and finds the lowest/min y point.