Название: glActiveTexture Отправлено: Disa от Октябрь 26, 2012, 13:44 В qt для Windows нет glActiveTexture и его предлагают добавлять руками вот так вот:
Код
Правда еще кое-где, углядел: Код
В общем вопрос, объясните почему такие трудности и нельзя сразу использовать glActiveTexture? За ранее благодарен. Название: Re: glActiveTexture Отправлено: Igors от Октябрь 26, 2012, 14:08 Можно просто glActiveTextureARB
Название: Re: glActiveTexture Отправлено: mitrich от Октябрь 26, 2012, 15:57 glActiveTextureARB тоже таким же образом инициализировать вручную придётся. Трудности потому, что наличие этой функции зависит от версии OpenGL (мин. 1.3 вроде), соответственно от видеокарты и её драйвера. Т.е. теоретически, её может и не быть в системе (видеокарта антикварная или пользователь умудряется работать без установленных нормальных дров от производителя).
Для автоматической инициализации функций OpenGL 2.0 можно использовать класс QGLFunctions (http://qt-project.org/doc/qt-4.8/qglfunctions.html) (Qt 4.8), например так: Код
А для ручной инициализации есть ещё функция QGLContext::getProcAddress (http://qt-project.org/doc/qt-4.8/qglcontext.html#getProcAddress) - вместо wglGetProcAddress Название: Re: glActiveTexture Отправлено: Igors от Октябрь 26, 2012, 17:59 glActiveTextureARB тоже таким же образом инициализировать вручную придётся. Чего это если она объявлена в glext.h (да и в glew.h)? Насколько я помню glewInit разбирается со всеми такимиОффтоп А чего понесло в OpenGL, что хотим получить? Или просто так, для расширения кругозора (что тоже неплохо) Название: Re: glActiveTexture Отправлено: mitrich от Октябрь 26, 2012, 18:42 В glext.h она объявлена, вот только в opengl32.dll точка входа для неё (и многих других) отсутствует. И под виндой для всех функций OpenGL версии > 1.1 (или расширений, не входящих в стандарт) всё сводится к получению их через wglGetProcAddress. Так работают и QGLContext::getProcAddress, и QGLFunctions, и GLEW, про который я забыл написать (хотя самый удобный вариант, наверное) и который является сторонней библиотекой.
Название: Re: glActiveTexture Отправлено: Disa от Октябрь 29, 2012, 16:25 Код: А чего понесло в OpenGL, что хотим получить? Или просто так, для расширения кругозора (что тоже неплохо) Иногда приходиться работать с 3d, а рабочая лошадка - mac (но пишу для винды). Если что-то трудное, то делаю на OSG или Unity, хотя первое иногда заставляет захотеть разбить монитор :) А если мелкие приложение, то на qt + openGL самое то, что нужно. Freeglut или SDL как-то руки не дойдут подучить, но думаю, что и не нужно. О glActiveTexture прочитал кусок в документации на английском и никак не мог понять, в чем трудности вызова функции, которая начинается на gl*. Вроде они не зависят от платформы. Название: Re: glActiveTexture Отправлено: Igors от Октябрь 29, 2012, 16:53 Иногда приходиться работать с 3d, Я спрашивал какая цель, т.е. чему это посвящено (а не какие тулзы). Конечно это может быть приватно и на ответе не настаиваю. Ну вывели сцену, и что с того? Это всего лишь визуализация/отображение. Один помню говорил "хочу сделать красивую сцену" - ну так это надо учиться на 3D артиста, а не программистаО glActiveTexture прочитал кусок в документации на английском и никак не мог понять, в чем трудности вызова функции, которая начинается на gl*. Вроде они не зависят от платформы. Эти ф-ции зависят от имеющихся расширений, типа weak linked, их может и не быть. Название: Re: glActiveTexture Отправлено: Disa от Октябрь 29, 2012, 19:42 Ну я уж было подумал, что Qt для этого не очень подходит :D
В данный момент была задача: "Отображения элементов ядерного реактора (стержней , в связи с физической моделью станции)", Раньше было - отображение Парето плоскостей, для многомерных данных. Еще хотели визуализацию пультов управления АЭС, в 3d, но там очень-очень муторно и пока не брался. |