how different are graphics APIs actually? at the end of the day, isn't the core functionality to render triangles and run shaders? why is there OpenGL, Vulkan, Metal, and DirectX? what's the main meaningful differences?
WebGPU abstracts over all of these, to my understanding? that way, web programs work on all operating systems? so clearly they're similar enough to not have to care about the differences in my program?
why are there five . why so many. it's all just a frontend to the same functionality??? the same hardware??
(i'm not really a graphics programmer but i've interacted with these APIs in code and written graphical programs)