This function actually draws rectangles with 'gui/cornerX' textures applied to it's rounded corners. It means that this function will fail (or will be drawn not as expected) with any vertex operations, such as model matrices like cam.Start3D2D (corners would be pixelated) or stencil operations. Consider using surface.DrawPoly or mesh library
This is a rendering function that requires a 2d rendering context.