Я пытаюсь понять, как OpenGL и DirectX работают с графической картой.
Если я пишу программу в OpenGL, которая делает треугольник, а другая в DirectX, которая делает то же самое, что именно происходит с стороной GPU?
При запуске программы каждый вызов библиотеки OpenGL и каждый вызов библиотеки DirectX будут генерировать код для графического процессора, а машинный код GPU, созданный из двух программ, будет таким же? (Например, если DirectX и OpenGL похожи на Java Bytecode, предварительно скомпилированные, то, когда он фактически работает, он создает одно и то же)
Или у GPU есть 2 разных набора команд, по одному для каждого. Я имею в виду, что отличает OpenGL и DirectX для графического процессора, как он может различать два API?
Разве это отличается от перспективы программиста?