Если вас интересовали параметры линкера, то так и надо было спрашивать про параметры линкера.
и что?
Ну это ж просто обёртка какая-то. Зачем она мне сейчас?
Если вас интересовали параметры линкера, то так и надо было спрашивать про параметры линкера.
и что?
Ну это ж просто обёртка какая-то. Зачем она мне сейчас?
Там просто объявления и загрузка функций.
Дело не в ней, а в том, что там говорят, что в версии из Дельфи есть баги. Правда не уточняют какие именно.
Delphi is already shipping with an OpenGL header, but that header is outdated and also buggy . Therefore we urge everyone to NOT use that header, especially as it lacks most of OpenGL’s current functionality.
Типа что данная обёртка устраняет эти баги?
И подключив ее, можно так же вызывать низкоуровневые функции напрямую, без обёрточных? И тогда багов не будет?
А opengl32.dll
Delphi откуда берёт?
Может там вообще не opengl32.dll
Да,
Не знаю как в стандартном юните из Дельфи.
А то что писал выше. Delphi своеобразная среда, это не MVS.
замечание - команды и функции OpenGL имеют префикс gl для размещенных в библиотеке opengl32.dll и glu для размещенных в библиотеке glu32.dll. Прототипы этих функций находятся в модуле opengl.pas. Функции OpenGL, имеющие отношение только к реализации OpenGL под Windows, имеют префикс wgl, как, например, wglCreateContext, а некоторые вообще не имеют префикса, например, SwapBuffers. Их прототипы описаны в модуле windows.pas.
Источник: Работа с OpenGL - Введение
И как это связано с тем, откуда берётся файл opengl32.dll
?
Файлы:
Какие отличия? Написано ж просто, что у функций из разных библиотек разные префиксы.
На всякий случай. На самом деле совпадающих имен конечно мало или вообще нет. Нет никаких gluVertex2f, Vertex2f, только glVertex2f.
Если в плюсы загнать формулу расчета смещения из делфийского примера, неужели выходит отличный от Delphi результат?
P. S.
Насколько понял из информации в сети, MVS и Delphi по умолчанию берут эти dll из .\Windows\System32.
какого смещения и из какого примера?
У меня есть другой проект, где одни и те же формулы работают по-разному в С++ и Delphi. Коллизия 2D-шариков визуально сильно отличается. Формулы отскока писал, конечно же, не я и там могут быть ошибки. Но формулы-то одни и те же, а поведение шариков заметно разное. Там, конечно, надо всё еще раз перепроверить
Отталкиваюсь от тех фрагментов кода что в первом посте.
Формулы расчета схожи но не идентичны.
Вот к примеру даже взять функцию glTranslatef. В cpp коде в конце каждой итерации делаете сдвих по X на значение 10, а уже в pas коде сдвиг выполняется на значение 0,0625.
И выше, циклы в обоих фрагментах кода производят расчет не одинаково. Т. е. вычисления не идентичны. Посмотрите сами, внимательно.
В приведенных фрагментах, нет. Они различны.
Правильно - не одинаково. Если делать одинаково, то в Delphi не работает. Там еще в других местах есть различия.
Это я про другой проект говорил. Без OpenGL.
Там много чего написано, но есть это:
const
glu32 = 'glu32.dll';
A opengl32 = 'opengl32.dll'
берётся из uses windows
, почему-то.