Как узнать поддерживает ли видеокарта opengl
Узнать установленную версию можно при помощи команды dxdiag, вводимой в меню «Выполнить». Загрузить новый дистрибутив можно с официального сайта поддержки Microsoft в разделе Downloads. Как уже понятно, DirectX OpenGL обновить можно обычным стартом процесса инсталляции загруженного дистрибутива.
Как обновить DirectX OpenGL?
- Нажмите Win + R.
- Скопируйте команду devmgmt.msc в текстовое поле и кликните по подтверждению.
- Раскройте подраздел «Видеоадаптеры».
- Здесь и будет упоминание о модели установленной карты.
- Перейдите на сайт производителя и загрузите последние драйверы для нее.
- Перезапустите ПК.
Почему мой OpenGL не работает?
Добавьте файл DLL OpenGL вручную.
- Перезагрузите компьютер. Первое, что вы должны сделать, если игры и другие программы на вашем компьютере не работают должным образом, — это перезагрузить компьютер. …
- Обновите Windows. …
- Переустановите графический драйвер. …
- Добавьте файл DLL OpenGL вручную.
Обновление DirectX
Однако обновление может и не дать желаемого положительного результата без апдейта платформы DirectX, которая является неким связующим мостом между железом и программным комплексом в плане мультимедиа.
Узнать установленную версию можно при помощи команды dxdiag, вводимой в меню «Выполнить». Загрузить новый дистрибутив можно с официального сайта поддержки Microsoft в разделе Downloads.
Как уже понятно, DirectX OpenGL обновить можно обычным стартом процесса инсталляции загруженного дистрибутива. Преимущество этого обновления состоит еще и в том, что в самом диалоговом окне DirectX можно провести ряд тестов, включая производительность DirectSound, ffdshow, Direct3D и т. д.
Нужно ли скачивать OpenGL?
Для того, чтобы OpenGL работал корректно, необходимо установить верную версию. Если у вас 32-ух битная система, то надо скачивать OpenGL 32 bit. А если у вас Windows 10 x64, то нужно скачивать 64-ех битную версию программы. Пакет подходит для графических чипов Intel, но есть версии и для других видеокарт.
Есть ли в Windows 10 OpenGL?
Windows 10 — отличная операционная система, и, несмотря на все значительные улучшения, которые она получила, в ней все еще есть некоторые проблемы и ошибки. В качестве одного из них пользователи сообщали о проблемах OpenGL, задержке FPS и проблемах с видеокартой.
Почему драйверы не обновляются?
Если вдруг ни одно из вышеперечисленных решений не помогает, вероятнее всего, причина кроется только в том, что видеоадаптер инсталлируемую версию OpenGL попросту не поддерживает, поэтому, как ни пытайся, драйвер установить не получится. Единственным выходом станет установка более мощной видеокарты.
Вы спросите: кто же они? Они - мёртвая компания, которую я считаю истинным убийцей OpenGL. Конечно, общая несостоятельность Комитета сделала OpenGL уязвимым, в то время как он должен был рвать D3D в клочья. Но по-моему, 3D Labs - возможно единственная причина текущего положения OpenGL на рынке. Что они для этого сделали?
Они разработали язык шейдеров для OpenGL.
3D Labs были умирающей компанией. Их дорогостоящие GPU были вытеснены с рынка рабочих станций всё возрастающим давлением nVidia. И в отличие от nVidia, 3D Labs не были представлены на потребительском рынке; победа nVidia означала бы смерть для 3D Labs.
Что в итоге и случилось.
В стремлении оказаться на плаву в мире, которому были не нужны их продукты, 3D Labs заявились на конференцию Game Developer Conference с презентацией того, что они назвали «OpenGL 2.0». Это был OpenGL API, переписанный с нуля. И это имело смысл, ибо в те времена в API OpenGL было полно хлама (который, впрочем, остаётся там и по сей день). Посмотрите хотя бы на то, насколько эзотерически сделаны загрузка и биндинг текстур.
Частью их предложения был язык шейдеров. Да, именно он. Тем не менее, в отличие от имеющихся кросс-платформенных расширений, их язык шейдеров был «высокоуровневым» (C - это высокий уровень для языка шейдеров).
В это же время в Microsoft работали над своим собственным языком шейдеров. Который они, включив всё своё коллективное воображение, назвали… Высокоуровневым Языком Шейдеров (HLSL). Но их подход к языку был фундаментально иным.
В языке от 3D Labs ничего этого не было. Вы отдаёте драйверу C-подобный язык, и он создаёт шейдер. На этом всё. Никакого ассемблерного шейдера, ничего, что можно скормить чему-то ещё. Только объект OpenGL, представляющий шейдер.
Для пользователей OpenGL это означало, что они становились подвержены капризам разработчиков OpenGL, которые только научились компилировать ассемблероподобные языки. В компиляторах новорождённого языка шейдеров OpenGL (GLSL) свирепствовали баги. Что ещё хуже, если вам удавалось заставить шейдер корректно компилироваться на различных платформах (что уже само по себе было большим достижением), то он всё ещё был подвержен оптимизаторам тех времён, которые были не так уж оптимальны, как могли бы быть.
Это было большим, но не единственным недостатком GLSL. Далеко не единственным.
В D3D, как и в старых ассемблерных языках OpenGL, можно было смешивать и всячески комбинировать вершинные и фрагментные шейдеры. Можно было использовать любой вершинный шейдер с любым совместимым фрагментным шейдером, если они взаимодействовали через одинаковый интерфейс. Более того, допускалась даже некоторая несовместимость: например, вершинный шейдер мог подать на выход значение, которое не использовалось фрагментным шейдером.
В GLSL ничего такого не было. Вершинный и фрагментный шейдер сплавлялись воедино, образовывая нечто, названное компанией 3D Labs «программным объектом». Поэтому, для совместного использования нескольких вершинных и фрагментных шейдеров в различных комбинациях, приходилось создавать несколько программных объектов. Это стало причиной второй по величине проблемы.
3D Labs думали, что они самые умные. Они взяли C/C++ за основу для модели компиляции GLSL. Это когда вы берёте один c-файл и и компилируете его в объектный файл, а затем берёте несколько объектных файлов и компонуете их в программу. Именно так компилируется GLSL: сначала вы компилируйте вершинный или фрагментный шейдер в шейдерный объект, затем помещаете эти объекты в программный объект и компонуете их воедино чтобы наконец сформировать программу.
В теории это позволяло появиться таким крутым вещам, как «библиотечные» шейдеры, которые содержат код, вызываемый основным шейдером. На практике это приводило к тому, что шейдеры компилировались дважды : один раз на стадии компиляции и второй раз на стадии компоновки. В частности, этим славился компилятор от nVidia. Он не генерировал какой-либо промежуточный объектный код; он компилировал вначале, выбрасывал полученный результат и компилировал заново на стадии компоновки.
Таким образом, чтобы приделать вершинный шейдер к двум разным фрагментным шейдерам, приходилось компилировать намного больше, чем в D3D. Особенно с учётом того, что вся компиляция производится оффлайново , а не перед непосредственным исполнением программы.
У GLSL были и другие проблемы. Возможно, было бы неправильным сваливать всю вину на 3D Labs, ибо в конечном итоге ARB утвердили и включили в OpenGL язык шейдеров (но ничего больше из предложений 3DLabs). Однако, изначальная идея всё равно была за 3D Labs.
И теперь самое печальное: 3D Labs были правы (в основном). GLSL не векторный язык, каким в то время был HLSL. Так случилось потому, что железо 3D Labs было скалярным (как современное железо от nVidia), и они были полностью правы в выборе направления, которому позднее последовали многие производители оборудования.
Они были правы и с выбором модели компиляции для «высокоуровневого» языка. Даже D3D в итоге к этому пришёл.
Проблема в том, что 3D Labs были правы в неправильное время . И в попытках попасть в будущее преждевременно, в попытках быть готовыми к будущему, они отставили в сторону настоящее. Это выглядит как T&L-функциональность в OpenGL, которая была в нём всегда. За исключением того, что T&L-конвейер OpenGL был полезным и до появления аппаратного T&L, а GLSL был обузой до того как остальной мир догнал его.
GLSL - это хороший язык сейчас . Но что было в то время? Он был ужасен. И OpenGL пострадал от этого.
На подходе к апофеозу
Я поддерживаю ту точку зрения, что 3D Labs нанесли OpenGL смертельный удар, но последний гвоздь в крышку гроба забил сам ARB.
Возможно вы слышали эту историю. Во времена OpenGL 2.1, у OpenGL были большие проблемы. Он тащил за собой огромный груз совместимости. API больше не был простым в использовании. Одну вещь можно было сделать пятью разными способами и непонятно какой из них быстрее. Можно было «изучить» OpenGL по простым руководствам, но при этом вы не изучали тот OpenGL, который даёт настоящую графическую мощь и производительность.
ARB решили предпринять ещё одну попытку изобрести OpenGL. Это было как «OpenGL 2.0» от 3D Labs, но лучше, потому что за этой попыткой стоял ARB. Они назвали это «Longs Peak».
Что такого плохого в том, чтобы потратить немного времени на улучшение API? Плохо то, что Microsoft оказалась в довольно шатком положении. Это было время перехода на Vista.
В Vista Microsoft решили внести давно напрашивающиеся изменения в графические драйверы. Они заставили драйверы обращаться к ОС за виртуализацией графической памяти и многим другим.
Можно долго спорить о достоинствах такого подхода, и о том, был ли он вообще возможен, но факт остаётся фактом: Microsoft сделала D3D 10 только для ОС Vista и выше. Даже на поддерживающем D3D железе было невозможно запустить D3D приложение без Висты.
Вы возможно помните, что Виста… скажем так, работала не очень хорошо. Итак, у нас была неторопливая ОС, новый API, который работал только на этой ОС, и новое поколение железа, которое нуждалось в этом API и ОС чтобы делать нечто большее, чем просто превосходить предыдущее поколение в производительности.
Тем не менее, разработчики могли использовать функциональность уровня D3D 10 через OpenGL. То есть могли бы, если бы ARB не был занят работой над Long Peaks.
ARB потратили добрые полтора-два года, работая над улучшением API. Ко времени выхода OpenGL 3.0 переход на Висту закончился, Windows 7 была на подходе, и разработчиков игр больше не заботила функциональность уровня D3D 10. В конце концов, оборудование для D3D 10 прекрасно работало с приложениями на D3D 9. С увеличением темпов портирования с ПК на консоли (или с переходом ПК-разработчиков на консольный рынок), разработчикам всё меньше была нужна функциональность D3D 10.
Если бы разработчики получили доступ к этой функциональности даже на Windows XP, развитие OpenGL могло бы получить живительный заряд бодрости. Но ARB упустили эту возможность. А хотите знать что самое ужасное?
ARB не смогли изобрести API с нуля несмотря на трату двух драгоценных лет на попытки сделать это. Поэтому они вернули статус-кво, добавив лишь механизм для объявления функциональности устаревшей.
В итоге ARB не только упустили ключевые возможности, но и не выполнили ту работу, которая привела их к этому упущению. Это был epic fail по всем направлениям.
Такова история о противостоянии OpenGL и Direct3D. История упущенных возможностей, величайшей глупости, умышленного безрассудства и банальных нелепостей.
OpenGL – это программный интерфейс, отвечающий за вывод графических данных. Обычно его работу обеспечивает драйвер видеокарты. Однако некоторые видеокарты не поддерживают необходимую версию OpenGL. В этом случае следуйте следующим шагам:
Шаг 1: Обновите драйвер видеокарты
Такая проблема может возникать, если драйвер видеокарты вашего компьютера устарел. Скачайте файл установки драйвера с сайта производителя и следуйте инструкциям по установке.
Шаг 2: Попробуйте установить программную реализацию OpenGL
Если после обновления драйверов видеокарта все еще не поддерживает 2.0 вы можете установить замену в видео программного обеспечения:
Или в основном меню программы нажмите Настройки и в появившемся меню выберите Параметры . В окне настроек поставьте галочку в пункте Использовать программную реализацию OpenGL и нажмите ОК .
Иногда ошибки opengl32.dll и другие системные ошибки DLL могут быть связаны с проблемами в реестре Windows. Несколько программ может использовать файл opengl32.dll, но когда эти программы удалены или изменены, иногда остаются "осиротевшие" (ошибочные) записи реестра DLL.
Редактирование реестра Windows вручную с целью удаления содержащих ошибки ключей opengl32.dll не рекомендуется, если вы не являетесь специалистом по обслуживанию ПК. Ошибки, допущенные при редактировании реестра, могут привести к неработоспособности вашего ПК и нанести непоправимый ущерб вашей операционной системе. На самом деле, даже одна запятая, поставленная не в том месте, может воспрепятствовать загрузке компьютера!
Предупреждение: Если вы не являетесь опытным пользователем ПК, мы НЕ рекомендуем редактирование реестра Windows вручную. Некорректное использование Редактора реестра может привести к серьезным проблемам и потребовать переустановки Windows. Мы не гарантируем, что неполадки, являющиеся результатом неправильного использования Редактора реестра, могут быть устранены. Вы пользуетесь Редактором реестра на свой страх и риск.
Перед тем, как вручную восстанавливать реестр Windows, необходимо создать резервную копию, экспортировав часть реестра, связанную с opengl32.dll (например, FineReader OCR):
- Нажмите на кнопку Начать .
- Введите "command " в строке поиска. ПОКА НЕ НАЖИМАЙТЕENTER !
- Удерживая клавиши CTRL-Shift на клавиатуре, нажмите ENTER .
- Будет выведено диалоговое окно для доступа.
- Нажмите Да .
- Черный ящик открывается мигающим курсором.
- Введите "regedit " и нажмите ENTER .
- В Редакторе реестра выберите ключ, связанный с opengl32.dll (например, FineReader OCR), для которого требуется создать резервную копию.
- В меню Файл выберите Экспорт .
- В списке Сохранить в выберите папку, в которую вы хотите сохранить резервную копию ключа FineReader OCR.
- В поле Имя файла введите название файла резервной копии, например "FineReader OCR резервная копия".
- Убедитесь, что в поле Диапазон экспорта выбрано значение Выбранная ветвь .
- Нажмите Сохранить .
- Файл будет сохранен с расширением.reg .
- Теперь у вас есть резервная копия записи реестра, связанной с opengl32.dll.
Следующие шаги при ручном редактировании реестра не будут описаны в данной статье, так как с большой вероятностью могут привести к повреждению вашей системы. Если вы хотите получить больше информации о редактировании реестра вручную, пожалуйста, ознакомьтесь со ссылками ниже.
Возможно у вас выскакивает ошибка связанное что-то с видео драйвером при запуске любимого Майнкрафта, то в этой статье вам точно помогут. Такую ошибку можно словить используя , но решение здесь есть!"
Вот так может выглядеть такая ошибка:
Minecraft был закрыт по причине несовместимости драйверов видеокарты . Возможно, они не поддерживают версию OpenGL, используемой в запускаемой версии Minecraft. В любом случае, попробуйте найти и установить бета-версии драйверов для своей видеокарты и повторите попытку.
Если объяснить более подробнее, то из-за старой или вообще не установленной версии драйверов для вашей видеокарты игра не может впринципе запуститься. Поэтому и вылетела данная ошибка. Решение довольно банально - обновить драйвера видеокарты .
Существуют два главных разработчика видеокарт - NVIDIA (GeForce) и AMD (Radeon). Для начала, необходимо выяснить от какого производителя ваша видеокарта.
Примечание: Если вы знаете одного из изготовителей карты - Palit, ASUS, MSI, Chaintech, Sapphire, то это немного не то, всё равно они делают видеокарты по технологии AMD или NVIDIA.
Как всё таки узнать чья у вас видеокарта?
1) Нажимаем "Пуск", вводим в поиск "dxdiag", и запускаем эту программу.
2) Откроется окно, в котором необходимо выбрать вкладку "Монитор" (Или возможно "Дисплей")
Рис 1. Dxdiag во вкладке Монитор с видеокартой NVIDIA
Рис 2. Dxdiag во вкладке Экран с видеокартой AMD
3) Как видно по рисунку 1, там представлены видеокарты от Nvidia. На следующей же скрине (Рис 2), видеокарта от AMD. Сравните и выберите вашу.
3.1) Если у вас не Windows, то:
1) Откройте терминал.
2) Введите “lspci -v | less”.
3) Ищите то что связано с VGA Compatible или Video Controller.
4) Далее найдите изготовителя вашей видеокарты.
Попробуйте обновить все компоненты системы через специальную программу (App Store).
4) После того, как вы определились с производителем, необходимо скачать драйвер для одного из них.
Как проверить свой графический процессор?
Как я могу узнать, какая видеокарта установлена на моем ПК?
- Щелкните "Пуск".
- В меню "Пуск" выберите "Выполнить".
- В поле «Открыть» введите «dxdiag» (без кавычек) и нажмите кнопку «ОК».
- Откроется средство диагностики DirectX. Щелкните вкладку Display.
- На вкладке «Дисплей» информация о вашей видеокарте отображается в разделе «Устройство».
Что означает OpenGL 3.3?
NVIDIA анонсирует драйверы Geforce и Quadro, поддерживающие OpenGL 3.3. … OpenGL — это наиболее широко применяемый API для 2D и 3D графики (интерфейс прикладного программирования), который развернут во всех основных операционных системах для настольных ПК. Загрузите драйверы NVIDIA OpenGL 3.3 сегодня!
Как обновить версию OpenGL?
Чтобы обновить версию OpenGL, обновите видеодрайверы. Для этого кликните правой кнопкой мыши по видеокарте и в контекстном меню выберите опцию "Обновить драйверы".
Какие видеокарты поддерживают OpenGL?
Поддерживают видеокарты: Radeon серии HD; GeForce 8, 9, GTX 100, GTX 200, GTX 300 и GTX 400 серий.
Какая последняя версия OpenGL?
Ссылки: Спецификация основного профиля OpenGL 4.6. Спецификация профиля совместимости OpenGL 4.6. Спецификация OpenGL Shading Language 4.60.
…
OpenGL 4.6 (2017)
Добавление | Расширение ядра |
---|---|
Можно создавать контексты OpenGL, которые не сообщают об ошибках любого рода. | KHR_no_error |
Как открыть настройки OpenGL?
- Нажмите правой кнопкой на рабочем столе .
- Нажмите Свойства графики > 3D .
- Найдите отображенное на экране имя графической системы Intel® .
- Основываясь на данных о текущей версии, выберите ее из следующего списка, чтобы найти общие и выборочные настройки :
Как включить OpenGL в Windows 10?
Щелкните правой кнопкой мыши файл установки драйвера и выберите «Свойства». c. Перейдите на вкладку «Совместимость» и установите флажок «Запустить эту программу в режиме совместимости для», затем выберите операционную систему Windows 8 из раскрывающегося меню и продолжите установку.
Как обновить OpenGL на Windows 7 или в любой другой системе при помощи специализированных утилит?
Для владельцев чипов NVIDIA и Radeon задача может быть несколько упрощена. Как правило, для них в комплекте в предустановленном виде поставляются специальные управляющие программы вроде PhysX и Catalyst. Именно поэтому обновить драйвер OpenGL можно с их помощью.
Если по каким-либо причинам такие утилиты отсутствуют, следует их просто скачать и интегрировать в систему. При наличии постоянно активного интернет-подключения они пригодятся не только для настройки игр, а и для автоматического слежения за появлением новый версий необходимых драйверов, включая и OpenGL.
В принципе, если такой вариант пользователю не нравится, можно воспользоваться не менее интересными программами наподобие Driver Booster, которые без участия пользователя обновляют драйверы абсолютно для всех «железных» и программных устройств, установленных на компьютере или ноутбуке. Приложение в процессе сканирования системы само определит версию драйвера OpenGL. Как обновить его? Нужно всего лишь согласиться с предложением установки найденных апдейтов. По завершении процесса обновления в обязательном порядке потребуется полная перезагрузка.
Наконец, можно установить специальную утилиту под названием OpenGL Extensions Viewer, с помощью которой можно и узнать версию установленного пакета драйверов, и обновить его до последней версии.
AMD поддерживает OpenGL?
AMD ПОДДЕРЖИВАЕТ OpenGL.
Могу ли я скачать OpenGL?
Какая последняя версия OpenGL?
Ссылки: Спецификация основного профиля OpenGL 4.6. Спецификация профиля совместимости OpenGL 4.6. Спецификация OpenGL Shading Language 4.60.
…
OpenGL 4.6 (2017)
Добавление | Расширение ядра |
---|---|
Можно создавать контексты OpenGL, которые не сообщают об ошибках любого рода. | KHR_no_error |
Как сделать так, чтобы мой драйвер поддерживал OpenGL?
На официальном сайте перейдите к графическому драйверу и выберите свою операционную систему. Загрузите последние версии драйверов для вашей видеокарты и установите их на свой компьютер. Это также обновит OpenGL на вашем компьютере. В противном случае имеет смысл получить драйвер OpenGL из графического драйвера в Windows 10.
Как узнать версию OpenGL на компьютере?
Узнать установленную версию можно при помощи команды dxdiag, вводимой в меню «Выполнить». Загрузить новый дистрибутив можно с официального сайта поддержки Microsoft в разделе Downloads. Как уже понятно, DirectX OpenGL обновить можно обычным стартом процесса инсталляции загруженного дистрибутива.
Как установить OpenGL?
Для установки или обновления OpenGL необходимо просто своевременно загрузить последнюю версию драйвера видеокарты. И сделать это можно как через официальный сайт производителя чипсета, так и с помощью встроенной в систему утилиты «Диспетчер устройств».
Могу ли я обновить свою версию OpenGL?
Если у вас устаревшие драйверы OpenGL, вы можете начать видеть снижение производительности вашей видеокарты. Обновление драйверов OpenGL — это не то, для чего вам нужна степень в области информатики. Вы можете легко обновить драйверы через программное обеспечение Windows Update.
Могу ли я обновить свою версию OpenGL?
Если у вас устаревшие драйверы OpenGL, вы можете начать видеть снижение производительности вашей видеокарты. Обновление драйверов OpenGL — это не то, для чего вам нужна степень в области информатики. Вы можете легко обновить драйверы через программное обеспечение Windows Update.
Для чего используется OpenGL?
Как нетрудно догадаться, OpenGL предназначена для разработки игр, хотя на ее основе можно строить и другие формы мультимедиа-приложений. . В настоящее время OpenGL используется не только для написания программ с динамичной графикой, но и часто для портирования и адаптирования старых игр под Windows.
OpenGL мертв?
OpenGL не умрет. Да, Vulkan имеет больше функций и быстрее, чем OpenGL, но не все хотят использовать низкоуровневый API. В качестве аналогии подумайте о C ++ и Python. C ++ намного быстрее и имеет больше функций, но он низкого уровня (как Vulkan).
Могу ли я скачать OpenGL?
Как проверить, установлен ли у меня OpenGL?
Установите программу просмотра OpenGL, например, утилиту GLview, чтобы просмотреть версию OpenGL, установленную на вашем компьютере. Для Windows XP, Windows Vista и Windows 7 откройте средство просмотра, чтобы найти версию и версию драйвера в OpenGL, работающем на вашем компьютере.
Как узнать поддерживаемую версию OpenGL?
Проверить инициализацию драйвера можно с помощью утилит OpenGL Extensions Viewer и GPU Caps Viewer , проверить поддерживаемые процессором расширения можно с помощью утилит CPU-Z или Sandra . Если процессор не поддерживает SSE , можно или использовать более ранние версии драйвера (до 75.
Как обновить OpenGL es на андроид?
После скачивания и распаковки запустите исполняемый файл утилиты GPU_Caps_Viewer.exe. Воспользуйтесь вкладкой «GPU» – внизу должна находится строка с именем «OpenGL». Указанная в ней версия и будет поддерживаемой данным устройством.
Нашел как определить версию поддерживаемую установленным драйвером - через glGetString( GL_VERSION ). А вот как определить какую максимальную версию OpenGL поддерживает видеокарта?
Очевидно, что поддерживает или не поддерживает видеокарта все спецификации конкретной версии OpenGL - знает разве что производитель этой видеокарты.
Если же вы хотите заниматься садо-мазо, то вариант только один - вытаскивать идентификатор карты доступными способами и хранить собственные списки.
Только зачем.
создай контекст через wglCreateContext (не через wglCreateContextAttribs) . он будет с максимальной версией гл.
slava73
>Нашел как определить версию поддерживаемую установленным драйвером - через glGetString( GL_VERSION ). А вот как определить какую >максимальную версию OpenGL поддерживает видеокарта?
так выше драйвера не прыгнешь ведь.
Пользователь знает что он приобрёл. Соответственно догадывается где взять драйвер. И уж вряд ли производители видео напишут драйвера без последней версии поддержки OpenGL. А если и напишут без поддержки последней версии, что вряд ли, то где тогда брать драйвера? Даже если и знать, что видеокарта поддерживает такую-то версию.
KKH
ты бред написал, все видеокарты делают сразу с закладом на будущее. Кроме того драва могут быть старыми
slava73
Видеокарта никакую версию OpenGL не поддерживает, потому что видеокарта вообще ничего не знает про OpenGL. OpenGL это API.
Вот какую поддержку сделают в драйвере, такая и будет.
HolyDel
>создай контекст через wglCreateContext (не через wglCreateContextAttribs) . он будет с максимальной версией гл.
Не правда, зависит от дров.
Вот у меня wglCreateContext создавал контекст OpenGL 1.1, пока дрова не обновил.
nes
> Не правда, зависит от дров.
ну я неточно выразился. максимальная версия поддерживаемая системой (видеокарта + драйвера)
Radeon HD от 2xxx и GeForce от 8xxx поддерживают 3.3, HD от 5xxx - OpenGL 4.4 (теоретически - драйвера ещё не дописаны, и даже 4.3 ещё вроде не готова). NVidia не знаю, не слежу за ней. Осталось только в коде узнать название карты и распарсить его.
N1
> зачем парсить информацию, которая для этого не предназанчена, когда есть способ
> проверить на практике, поддерживается ли нужная версия текущим адаптером с
> текущим драйвером.
Так ему пофигу на драйвер, ему нужна версия, которую карта может потянуть, если бы был нужный драйвер. А то часто можно встретить на картах Radeon HD 4xxx поддерживаемую версию 2.0 или 2.1, хотя, если бы был нормальный драйвер, было бы 3.3. Сейчас драйверы уже вроде почти догнали версию OpenGL. А на новых, ещё не вышедших картах, будут только новые драйверы, поэтому для них GL_VERSION будет возвращать более близкие к максимальным значения.
Итог: надо определять версию двумя способами: парсить строку и через GL_VERSION. И брать максимальную из них. Если строка неизвестна, то ориентироваться только на GL_VERSION. Результат не всегда будет точным, но ближе, чем просто через GL_VERSION.
А вообще зачем это надо?
А вообще зачем это надо?
он либо сам не придумал, либо имел ввиду все таки версию с учетом поддержки и драйвером и видеокартой. на второй вариант он получил ответ выше, про создание контекста.
даже в софте типа OpenGL extension viewer показывается только то, что поддерживается комбинацией текущего GPU и драйвера. вряд ли ТС сможет придумать валидную причину, зачем его приложению нужна именно версия, теоретически поддерживаемая железом. нет драйвера - нет поддержки, и все. всякий парсинг имен видеокарты - это вообще бред наркомана. есть device id. если нужна база GPU с поддерживаемыми фишками - они уже существуют.
N1
Может он хочет контрибутить в nouveau?
war_zes
>ты бред написал, все видеокарты делают сразу с закладом на будущее. Кроме того драва могут быть старыми
ого, и как же из старых драйверов вызвать функции новых ? Никогда не слышал о том, что видеокарты работали работали и вдруг по команде свыше стали в два раза быстрее работать (если конечно речь не про баги).
N1
>надеюсь, у тебя нет доступа к компилятору.
тебе не повезло. Я начальник отдела и у меня работают 2 программиста с доступом к компилятору, которые кодят весь мой бред пока я занят своими делами.
>The only way to know if your OpenGL implementation supports a particular version is to attempt to create a context with that version and see if you get a >valid context as a result. wglCreateContextAttribsARB will either return the version you requested (or a backwards-compatible higher version), or it will fail
>(On failure wglCreateContextAttribsARB returns NULL).
Я не про в OpenGL, хвастать не буду, но если у меня нет функционала (API), который может создать контекст последней весии GL, то возвращался всегда fail. Может подскажешь как без обновления драйвера получить true ?
Видеокарта никакую версию OpenGL не поддерживает, потому что видеокарта вообще ничего не знает про OpenGL. OpenGL это API.
Вот какую поддержку сделают в драйвере, такая и будет.
По вашему выходит если драйвер поддерживает, то даже на riva tnt я смогу юзать все функции opengl 3.0 ?
вряд ли ТС сможет придумать валидную причину, зачем его приложению нужна именно версия, теоретически поддерживаемая железом.
Если поддержка зависит только от драйвера, то причин действительно нет. Если же и от видяшки, то как минимум мне надо знать как писать графическое приложение, какие функции и расширения OpenGL использовать, чтобы оно корректно работало на всех системах, где планируется его запуск.
slava73
> то даже на riva tnt я смогу юзать все функции opengl 3.0 ?
Имеется ввиду, что драйвер может не поддерживать в той или иной мере фичи . Ориентация на видеокарту - это не тру подход
2 ответа. Согласно Сравнению графических процессоров Intel №7 поколения, Intel HD Graphics 4000 поддерживает OpenGL до версии: 4.0 в Windows.
OpenGL: как простейшим способом?
Прежде всего, если при запуске игры или какого-то специфичного приложения система сообщает, что драйверы OpenGL нуждаются в обновлении, следует использовать самое стандартное решение.
Для активации процесса следует войти в стандартный «Диспетчер устройств», что можно сделать из «Панели управления», раздела администрирования компьютера или командой devmgmgt.msc через строку консоли «Выполнить», и найти там установленный видеоадаптер.
Апдейт можно запустить, используя одноименную команду в меню правого клика или в разделе свойств устройства. Если указать автоматический поиск, это может не дать результата, и система сообщит, что самый подходящий драйвер уже установлен. Поэтому желательно сначала обратиться на сайт производителя оборудования, выбрать свою модель графической карты, скачать самый новый драйвер, а при установке указать местоположение сохраненного дистрибутива.
Как обновить драйвер OpenGL?
Чтобы обновить OpenGL, вы должны обновить драйверы графического процессора.
…
Как я могу обновить OpenGL?
Несомненно, многие геймеры знают, что для корректной работы таких известных игр, как Minecraft или CS, одним из самых основных условий является наличие в системе установленных последних версий драйверов OpenGL. Как обновить этот пакет драйверов, сейчас и будет рассмотрено, поскольку, как и любое другое программное обеспечение, они могут устаревать. Именно поэтому иногда возникают проблемы с запуском любимых игр.
Как узнать, включен ли OpenGL?
Чтобы проверить поддерживаемые версии OpenGL графической карты:
- Загрузите и установите OpenGL Extensions Viewer (бесплатно).
- Откройте программу просмотра расширений OpenGL.
- В меню Задачи щелкните Сводка.
- Проверьте версию OpenGL графического процессора: Пример: версия OpenGL для графического процессора — 4.6 и ниже.
Как проверить свой графический процессор?
Как я могу узнать, какая видеокарта установлена на моем ПК?
- Щелкните "Пуск".
- В меню "Пуск" выберите "Выполнить".
- В поле «Открыть» введите «dxdiag» (без кавычек) и нажмите кнопку «ОК».
- Откроется средство диагностики DirectX. Щелкните вкладку Display.
- На вкладке «Дисплей» информация о вашей видеокарте отображается в разделе «Устройство».
Как включить OpenGL?
Теперь вы можете перейти в «Настройки» -> «Производительность» и включить OpenGL.
Как узнать мою версию DirectX?
Как определить версию DirectX с помощью средства диагностики DirectX
- Щелкните Пуск, а затем щелкните Выполнить.
- Введите dxdiag и нажмите кнопку ОК.
- На вкладке «Система» обратите внимание на версию DirectX, отображаемую в строке «Версия DirectX».
- На различных вкладках проверьте информацию о версии для каждого файла DirectX.
OpenGL или DirectX быстрее?
Вкратце: OpenGL быстрее DirectX. Что касается того, почему OpenGL быстрее, чем DirectX / Direct3D, простой ответ заключается в том, что OpenGL, похоже, имеет более плавный и эффективный конвейер. При скорости 303,4 кадра в секунду OpenGL отображает кадр каждые 3,29 миллисекунды; при 270,6 кадра в секунду DirectX отображает кадр за 3,69 миллисекунды.
Теперь вы можете перейти в «Настройки» -> «Производительность» и включить OpenGL.
…
3. Сделайте настройку реестра, чтобы принудительно включить настройки OpenGL.
Есть ли в Windows 10 OpenGL?
Windows 10 — отличная операционная система, и, несмотря на все значительные улучшения, которые она получила, в ней все еще есть некоторые проблемы и ошибки. В качестве одного из них пользователи сообщали о проблемах OpenGL, задержке FPS и проблемах с видеокартой.
Как мне установить OpenGL в Windows 10?
На официальном сайте перейдите к графическому драйверу и выберите свою операционную систему. Загрузите последние версии драйверов для вашей видеокарты и установите их на свой компьютер. Это также обновит OpenGL на вашем компьютере. В противном случае имеет смысл получить драйвер OpenGL из графического драйвера в Windows 10.
Как включить OpenGL в Windows 10?
Щелкните правой кнопкой мыши файл установки и выберите «Свойства» в меню. Перейдите на вкладку «Совместимость». Находясь на вкладке «Совместимость», найдите и выберите «Запустить эту программу в режиме совместимости» и выберите нужную операционную систему в раскрывающемся списке.
- Удалите драйверы дисплея и переустановите последнюю версию
- Установите последние версии драйверов дисплея в режиме совместимости .
- Запустите SFC.
- Настройте свой компьютер на лучшую производительность
Как мне обновить драйвер видеокарты?
- На рабочем столе одновременно нажмите клавиши «Windows» и «R». Это откроет вкладку Run, как показано на изображении.
- Щелкните строку поиска и введите devmgmt. …
- На странице диспетчера устройств щелкните «Адаптеры дисплея» и выберите графическую карту на своем ПК.
- Щелкните правой кнопкой мыши и выберите вариант обновления драйвера, доступный здесь.
Читайте также: