Такой ещё вопрос. я же правильно понимаю, что написав код на

условном огл 4 и скомпилирована в исполняемый файл, его можно будет запустить на допотопном железе? или же более поздние версии не совместимы аппаратно?

12 ответов

19 просмотров

если на этом железе имеется поддержка огл 4, то да)

Это вопрос к дровам, не к твоему бинарнику

OpenGL описывает какие есть функции, что они принимают и что они делают. В каждой версии свой набор функций. Вы загружаете функции в рантайме. Если вы запросите gl4 функцию, а драйвер умеет только gl2, вы получите nullptr. При попытке вызвать функцию по указателю равному nullptr ваша программа крашнется.

Psinka-Balerinka Автор вопроса
Алексей (lewa_j) Иванчуков
OpenGL описывает какие есть функции, что они прини...

я правильно понимаю, что функции получает драйвер, преобразовывает их в машинный код, а дальше команды в двоичном представлении поступают на чип? по сути все зависит не от железа, а от драйвера и умеет ли он, а железо нужно только для того, что увеличить объем, скорость работы ?

В целом да, поэтому в графических апи термины не цпу/гпу, а клиент/сервер. Сервер это любая программа, которая на опредеденные вызовы дает опредеденные по спецификации результаты. Клиент и сервер могут быть и на цпу (эмуляция), и на разных вычислителях, или даже разделены по Интернету

Psinka Balerinka
я правильно понимаю, что функции получает драйвер,...

Нет, функции gl исполняются на cpu, внутри драйвера. В каком виде драйвер общается с железом тут не так важно, но скорее всего через команд листы. То что вы описали больше похоже на то что происходит с шейдерами. То что умеет железо напрямую связано с тем что предоставляет драйвер. Для многих фич нужно дополнительное железо.

Psinka-Balerinka Автор вопроса

не совсем понимаю. какое нужно доп. железо, если, как я понял, основную роль выполняет драйвер?

Psinka Balerinka
не совсем понимаю. какое нужно доп. железо, если, ...

Чтобы функции из драйвера работали. нужна аппаратная поддержка

Psinka Balerinka
не совсем понимаю. какое нужно доп. железо, если, ...

Представь, что видеокарта это завод. А драйвер директор этого завода. А твоя программа - ты. Ты приходишь к директору завода и просишь сделать тебе деталь. Директор завода объясняет своим рабочим задачу (в отличии от тебя - он знает сколько именно на заводе рабочих, какие у них есть станки т. д., более того, рабочие на заводе говорят только на китайском, а ты нет, зато и ты и директор знаете английский), они её делают, он тебе отдаёт результат. А теперь представь, что ты пришёл к директору деревообрабатывающего завода и просишь сделать железную деталь. Какой бы не был умный директор завода и как бы искусно он не объяснял бы задачу своим рабочим, если на заводе нет станков по обработке металла, деталь тебе не сделают.

Psinka Balerinka
не совсем понимаю. какое нужно доп. железо, если, ...

Драйвер просто предоставляет интерфейс к тому что умеет железо.

Похожие вопросы

Обсуждают сегодня

День добрый, подскажите пожалуйста, есть ли какой-то способ сказать ребару не компилировать определённое приложение? Всю доку их перечиатл ничего подобного не нашёл
Кирилл
14
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Вопрос на перед, на следующую пятницу. Сколько строк кода можно вешать на одного программиста, понятно что если проект хорошо написан то можно и миллион. Но есть же где то пре...
AlekseyK Kluchnikov
31
Немного оффтопа: а кто на чем сидит для осдева в плане ide/редактора? Последнее время сидел на vscode, но я его прям не могу нормально воспринимать, перешел на сlion, но меня...
Evg Resh
29
Что за японодичь? Мне хоть m68k, хоть 8080, 8088, на любом можно что-то создать
Егор
5
и да, кто сказал что у эпла именно такой isa?
Boris Vinogradov
5
ну так тогда какой эплы юзают набор инструкций, и тогда считаються ли они армами вообще?
Shvabrikk Nya
4
Вот объясните, как это работает: Вот есть допустим unix-подобная система, и программа запускает допустим printf или fork, как это передается ядру, и как оно обрабатывать начин...
Егор
14
насколько реально, что при задействовании хардварного курсора фреимбуфер начнёт сильно искажать выводимую инфу? а то уже и понять то не могу сон это был или явь
Mixail Frolov
3
Добрый день. Мне посоветовали обратиться к вам в чат за помощью. Ситуация описана на скрине. Как мне сказали, мне на бота навесили флудвейт. Есть ли возможность снять его ра...
OVERLINK
7
Карта сайта