Ce este OpenGL? Unele aplicații și jocuri OpenGL au încetat să funcționeze, invocând faptul că OpenGL nu este acceptat de sistem. Cei care încep sunt foarte lenți. Ce s-a întâmplat

  1. În șoferi pentru placi video NVIDIA, furnizat ca parte a sistemului de operare Windows, de obicei nu acceptă OpenGL. Aplicațiile vor utiliza redarea software Windows OpenGL (wrapper în Direct3D în Windows Vista). Puteți verifica prezența unui driver OpenGL în sistem utilizând utilitățile OpenGL Extensions Viewer și GPU Caps Viewer. Dacă arată că furnizorul OpenGL este Microsoft, atunci sistemul nu are un driver OpenGL. Descărcați și instalați cel mai recent driver de placă grafică de pe site-ul web NVIDIA.
  2. Noua versiune a driverului ar putea adăuga suport pentru o nouă versiune a API-ului OpenGL, necunoscut aplicatiei. De exemplu, driverul spune aplicațiilor că acceptă OpenGL versiunea 2.0, iar aplicația/jocul verifică dacă este compatibil cu OpenGL versiunea 1.X. Pentru a rezolva problema, puteți utiliza RivaTuner în setările OpenGL din fila „Compatibilitate” pentru a forța înlocuirea șirului versiunii OpenGL raportată de driver către cea acceptată de aplicație, de exemplu, 1.5. Această opțiune nu are efect asupra execuției placă video OpenGL, dar din același motiv aplicațiile care necesită OpenGL versiunea 2.0 pot înceta să funcționeze. O modalitate mai flexibilă este de a crea pentru aplicare problematică profil de driver folosind utilitarul nHancer, specificând versiunea cerutăîn opțiunea „Versiune OpenGL raportată” din fila „Compatibilitate”.
  3. Problema poate apărea dacă mai multe drivere OpenGL sunt instalate pe sistem dintr-un motiv oarecare. In registrul de la adresa HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\OpenGLDrivers (HKLM\Software\Microsoft\Windows\CurrentVersion\OpenGLdrivers pentru Windows 9x-ME) verificați dacă există o singură subcheie RIVATNT și cheia Dll din această secțiune are valoarea nvoglnt (există o singură cheie cu valoarea nvopengl.dll pentru Windows 9x-ME). Dacă există alte subsecțiuni, de exemplu ati2dvag (OpenGL driver ATI), ar trebui eliminate exportându-le mai întâi într-un fișier .reg.
  4. Implementarea OpenGL 2.0 pentru GPU-uri GeForce FX și o versiune superioară Driver NVIDIA necesită sprijin procesor central Extensii SSE. Dacă aceste extensii nu sunt disponibile, driverul OpenGL ICD nu va fi inițializat, aplicațiile OpenGL se vor închide sau se va utiliza redarea software. Puteți verifica inițializarea driverului folosind utilitarele OpenGL Extensions Viewer și GPU Caps Viewer, puteți verifica extensiile acceptate de procesor folosind utilitarele CPU-Z sau Sandra. Dacă procesorul nu acceptă SSE, puteți fie să utilizați mai mult versiuni timpurii drivere (până la 75.ХХ), sau cu folosind RivaTunerîn setările OpenGL din fila „Compatibilitate”, activați „Modul de emulare NV25” stand implicit„Accelerație maximă”. Ca ultimă soluție, puteți utiliza OpenGL -> Direct3D wrapper GLDirect sau TitaniumGL. Uneori, procesorul acceptă SSE, dar suportul nu funcționează din cauza deprecierii BIOS placii de baza taxe. In mod deosebit această problemă tipic pentru sistemele cu procesoare AMD Athlon XP și Duron. actualizare BIOS placa de baza poate restabili suportul SSE.
  5. Dacă sistemul are mai multe plăci video bazate pe grafică diferită procesoare NVIDIA, atunci driverul OpenGL va accepta doar versiunea OpenGL acceptată de toate plăcile video.

Bună prieteni. Ultimele mele articole s-au concentrat pe tema grafică și adaptoare video. Cred că voi continua să explorez acest subiect în continuare. În articolele anterioare am vorbit despre DirectX și shadere, astăzi ne vom cufunda în lumea OpenGL. Să aflăm ce este, de unde să-l descarcăm și pentru ce este nevoie. Subiectul va fi conceput pentru cei care sunt doar interesați de acestea și care sunt foarte interesați să învețe ceva nou despre computere. Nu voi lâncevi, voi începe să scriu. Lectură plăcută :)

Ce este OpenGL și cu ce se folosește?

OpenGL este standardul grafic în domeniu grafica pe computer. Pe acest moment este unul dintre cele mai populare standarde de grafică din întreaga lume.

OpenGL înseamnă Open Graphics Library, ceea ce înseamnă că OpenGL este un program deschis și standard mobil. Programele scrise folosind OpenGL pot fi transferate pe aproape orice platformă, obținând în același timp același rezultat, fie că este o stație grafică sau un supercomputer.

OpenGL eliberează programatorul de la scrierea de programe pentru unii echipamente specifice. Dacă un dispozitiv acceptă o funcție, atunci această funcție este realizată în hardware, dacă nu, atunci implementarea sa este realizată de un program de bibliotecă.

Pe un site popular puteți găsi detalii despre acest standard:

Include aproximativ 150 diverse echipe, cu care programatorul poate defini diverse obiecte și poate randa. Vorbind mai mult într-un limbaj simplu, definiți obiecte, setați locația acestora în spațiul tridimensional, definiți alți parametri (rotație, scară, ...), setați proprietățile obiectului (culoare, textură, material, ...), poziția observatorului și Biblioteca OpenGL se va ocupa de afișarea tuturor acestor lucruri pe ecran.

Implementări OpenGL.

După cum puteți înțelege din cele de mai sus. Acel OpenGL este doar o specificație descrisă pentru grafica 3D. Pentru a transforma această specificație în realitate, trebuie să scrieți (implementați) cod. Codul este apoi împachetat într-o bibliotecă specială. Și există mai multe astfel de biblioteci, de la diferiți programatori.

Prima dintre aceste biblioteci se numește GLU. Această bibliotecă a devenit deja un standard și vine cu biblioteca principală OpenGL. Următoarea bibliotecă, de asemenea utilizată pe scară largă, este GLUT. Este, de asemenea, o bibliotecă independentă de platformă. Nu doar implementează funcții suplimentare OpenGL, dar oferă și funcții pentru lucrul cu Windows, tastatură și mouse. Există o altă bibliotecă asemănătoare cu GLUT, se numește GLAUX. Această bibliotecă a fost dezvoltată de Microsoft pentru sistemul de operare Windows. Este în multe privințe similar cu biblioteca GLUT, dar este ușor în urmă în ceea ce privește capacitățile sale.

Alternativă pentru OpenGL.

Deși biblioteca OpenGL este considerată una dintre cele mai bune biblioteci, nu este singura în această industrie. Are un singur concurent direct, despre care am vorbit într-unul din articolele anterioare. Și acest concurent este considerat a fi Direct3D din pachetul DirectX, dezvoltat de Microsoft. Direct3D a fost creat exclusiv pentru aplicații de jocuri. Există multe diferențe între ele, cea mai evidentă fiind că Direct3D este suportat începând cu hardware ieftin, în timp ce OpenGL nu este acceptat pe toate. plăci grafice Oh.

Trebuie să instalez OpenGL?

Dacă ați instalat deja drivere pe placa video, atunci nu. Deoarece cea mai recentă versiune de OpenGL este instalată atunci când instalați driverele de pe placa dvs. grafică.

Pentru a instala o nouă versiune de OpenGL, trebuie să actualizați driverele plăcii video. Accesați site-ul web al producătorului plăcii dvs. video: NVIDIA, AMD sau altele. Descarca ultimele drivere pentru cardul dvs., instalați-le.

De exemplu, al meu placa video Radeon 7850. Intru pe site-ul www.amd.com, găsesc acolo o pagină cu placa mea video și mă uit la specificațiile tehnice.

După cum puteți vedea, adaptorul meu video este compatibil cu OpenGL 4.2. Acum selectăm driverele.

OpenGL poate rula pe aceeași mașină cu Direct3D?

Da. Ambele programe sunt incluse în Versiunea Windows, lucrează pentru de mare vitezăși oferă multe funcții pentru jucători și editori video. Prin urmare, nu există niciun motiv să vă faceți griji că ei „trăiesc” împreună pe computerul dvs. :)

Cum se activează OpenGL?

Este imposibil să dai instrucțiuni clare cu privire la această întrebare. În general, în mod implicit, suportul pentru această tehnologie este prescris de creatorul jocului în momentul scrierii codului. Și utilizarea, de exemplu, a DirectX sau OpenGL, poate fi configurată printr-un anumit element din meniul jocului sau activată de jocul însuși în mod implicit. Prin urmare, dacă creatorul jocului nu lansează actualizări suplimentareși vă vom spune instrucțiunile de instalare pentru ele biblioteci suplimentare,atunci nu are rost să te gândești la această problemă. Ei bine, dacă au fost lansate unele suplimente, să zicem pentru același Counter Strike 1.6, pasionații au scris o cheat (și trișarea este rău!! atata), atunci pentru această instalare aveți nevoie descărcați un fișier mic .dllși aruncă-l înăuntru directorul rădăcină joc, apoi selectați OpenGL în setările jocului.

Din acest motiv, jocul începe să folosească funcțiile scrise în acest fișier.

Concluzie

Așa că am trecut peste altă bibliotecă pentru lucrul cu grafica. Să presupunem că OpenGL este un lucru atât de specific, care este folosit în principal activitate profesională pentru modele 3D. În jocurile de într-o măsură mai mare Există, de asemenea, suficiente funcții Direct3D și chiar mai multe. Luați versiunea recent lansată 12. Dar nici OpenGL nu stă pe loc și, cu o anumită perioadă de timp, lansează versiuni noi ale celor mai recente - versiunea 4.5 din 11 august 2014.

Un pachet de fișiere numit OpenGL este în majoritatea cazurilor solicitat de utilizatori pentru a rula corect anumite jocuri pe un computer care rulează sistemul de operare Windows 7 acest șofer lipsește sau versiunea sa este depășită, programele pur și simplu nu se vor porni și o notificare corespunzătoare va fi afișată pe ecran care vă va cere să instalați sau să actualizați software-ul. În acest articol vă vom spune cât mai multe despre încărcarea noilor biblioteci OpenGL.

În primul rând, merită să înțelegeți cum este instalată componenta în cauză pe un computer. Toate fisierele necesare instalat împreună cu driverele adaptorului grafic. Prin urmare, ar trebui mai întâi să actualizați software-ul acestei componente și apoi să treceți la analiza metodei alternative.

Când ai cel mai mult instalat șofer proaspăt nu mai există actualizări ale plăcii video, dar încă apare o notificare despre necesitatea actualizării OpenGL, treceți imediat la a treia metodă. Dacă această opțiune nu aduce niciun rezultat, înseamnă că echipamentul dumneavoastră nu acceptă cele mai recente biblioteci. Vă recomandăm să vă gândiți să alegeți o nouă placă video.

Metoda 1: Actualizați driverele plăcii video în Windows 7

După cum sa menționat mai sus, componentele OpenGL sunt instalate împreună cu fișierele adaptorului grafic. Windows 7 are mai multe metode pentru a le actualiza. Fiecare dintre ele se potrivește situatii diferiteși solicită utilizatorului să efectueze anumite acțiuni. Accesați articolul de la linkul de mai jos pentru a vă familiariza cu toate metodele în detaliu. Alegeți-l pe cel care vi se potrivește și urmați instrucțiunile furnizate. Odată ce procesul este finalizat, trebuie doar să reporniți computerul și să verificați funcționalitatea jocurilor sau a altor programe care necesitau o nouă versiune a bibliotecii.

Metoda 2: Actualizarea componentelor în utilitarul proprietar al plăcii video

Acum principalii producători adaptoare grafice sunt AMD și NVIDIA. Fiecare are propriul software care oferă funcţionare corectă cu sistemul de operare și vă permite să actualizați software-ul. Proprietarii de plăci video NVIDIA sunt sfătuiți să consulte materialul de la următorul link pentru a înțelege cum să instaleze noua versiune a driverului OpenGL în .

Proprietarii de carduri AMD trebuie să citească alte articole, deoarece în acest caz toate acțiunile sunt efectuate în sau în, în funcție de tipul de software instalat.

Metoda 3: Actualizare DirectX

Nu cea mai eficientă, dar uneori metoda de lucru este instalarea de noi componente biblioteci DirectX. Uneori conține fișiere adecvate care îi permit să funcționeze normal. jocurile necesare sau programe. Mai întâi trebuie să aflați care DirectX este deja instalat pe computer. Pentru a face acest lucru, citiți instrucțiunile din articolul de mai jos.

Pentru acum ultima versiune pentru sistemul de operare Windows 7 este DirectX 11. Dacă aveți instalată o bibliotecă anterioară, vă recomandăm să o actualizați și să verificați funcționalitatea software-ului. Citiți mai multe despre acest subiect într-un alt articol.

După cum puteți vedea, nu este nimic complicat în actualizarea OpenGL, principala problemă este doar suportul pentru cele mai recente fișiere ale acestei componente de către placa video. Vă recomandăm să testați toate metodele, deoarece eficiența fiecăreia depinde de circumstanțe diferite. Citiți instrucțiunile și urmați-le, atunci cu siguranță veți reuși.

Uneori, pentru a rula o aplicație sau un joc pe Windows, este posibil să aveți nevoie de numele pachetului instalat în sistem de operare programe.

Și, prin urmare, răspundeți la întrebarea cum să aflați ce DirectX este instalat.

Cunoscând versiunea exactă a acestui pachet, utilizat inițial doar în scopuri de jocuri, dar apoi folosit pentru a sprijini redarea fișierelor multimedia și pentru a efectua alte sarcini, puteți înțelege dacă computerul dvs. are suficiente resurse sau dacă este necesară o actualizare (a programul în sine sau elemente de calculator).

Ce oferă noua versiune?

Parte substanțială software funcționează numai în mediul adecvat - cu driverele și pachetele software necesare.

De exemplu, Adobe Photoshop necesită software OpenGL instalat și aproape toate jocuri moderne nu va rula fără DirectX 11.

Cunoașterea exactă a pachetului multimedia (precum și a resurselor computerului) vă permite să evitați următoarele probleme:

  • Achiziționarea sau descărcarea de aplicații care nu sunt acceptate de sistem;
  • Încercări de a instala versiuni anterioare de DirectX.

Pentru majoritatea aplicațiilor care necesită software special, cum ar fi DirectX, este inclus. Și în timpul procesului de instalare este sugerat să îl instalați pe computer sau să îl actualizați.

Dar, dacă actualizarea automată nu are loc, dar programul nu pornește din anumite motive, va trebui să aflați pachetul multimedia pentru a înțelege dacă incompatibilitatea acestuia cu aplicația cauzează problema.

O modalitate simplă de a determina

A sti Versiunea DirectX recent sistem instalat destul de simplu - în sistemele de operare moderne pachetul este deja inclus cu Windows. Și puteți determina varietatea după numele sistemului:

  • Într-una dintre cele mai comune sisteme Windows 7 încorporat este DirectX 10, potrivit pentru majoritatea aplicatii grafice, jocuri și fisiere multimedia;
  • ÎN Windows învechit XP a fost instalată implicit cea de-a 9-a versiune a pachetului, care de multe ori trebuia actualizată pentru a rula mai mult programe moderne;
  • Windows 8 a inclus DirectX 11;
  • Ambele versiuni a 11-a și a 12-a ale programului ar putea fi incluse cu cel mai recent, al zecelea Windows.

Definiție folosind instrumente încorporate

Pentru definiție precisă Versiunea DirectX care utilizează instrumentul de diagnosticare încorporat, necesită:

  1. Deschideți meniul de execuție a comenzii apăsând simultan tastele Windows + „R”;
  2. Introduceți comanda dxdiag;
  3. În fereastra care se deschide după executarea comenzii, pe prima filă, găsiți informații despre program, care se află în partea de jos a listei.

Sfat! Deoarece sistemul arată doar valori întregi, uneori informațiile DirectX 11 afișate pot însemna că sistemul are de fapt instalată versiunea 11.1 sau 11.2. Cu toate acestea, în majoritatea cazurilor, astfel de detalii nu sunt importante.

Un alt loc pentru a afla versiunea DirectX este panoul de control al plăcii video, dacă este instalată.

De exemplu, pentru produsele NVidia, astfel de informații sunt afișate atunci când se vizualizează informații despre sistem.

În plus, există utilități speciale care arată și totul informatie necesara despre sistem, inclusiv versiunea DirectX. De exemplu, Aida 64, numită anterior Everest.

Versiuni gratuite Acest utilitar poate fi găsit pe Internet și instalat pe computer - în viitor veți avea nevoie de el nu numai pentru a determina ce versiune de DirectX aveți.

Puteți găsi caracteristici similare în alte utilitare.

Afișată versiunea pachetului media Programul AIDA 64

Mă tem că va trebui să deschizi Linie de comanda prima ta zi de Linux (nu-ți face griji, mi s-a întâmplat și mie). Aplicații -> Standard -> Terminal. Tastați lspci și apăsați Enter. Toate conexiunile prin PCI sau PCI express sunt enumerate aici, inclusiv placa video. Citiți lista până când vedeți ceva despre ATI sau nVidia sau despre unul dintre modelele Intel.

apoi du-te la tabele de comparație Wikipedia pentru plăci video pentru a afla versiunea de OpenGL pe care o acceptă placa dvs.

amintiți-vă că vă spun doar ce versiune suportă hardware-ul. Pentru a putea rula biblioteci OpenGL, aveți nevoie și de un driver care să le accepte. Mai multe drivere video pentru fiecare generație de cip pentru Linux. Ubuntu vine cu versiuni open source cod sursa, care nu sunt rele, dar tind să fie cu un pas în spatele driverelor proprietare lansate de producătorii de plăci grafice (numite adesea drivere binare sau drivere proprietare). Dacă se dovedește că hardware-ul dvs. acceptă OpenGL 2.0 (ceea ce majoritatea fac), puteți încerca drivere proprietare. Ele sunt numite nvidia-current pentru nvidia și fglrx pentru ATI. Pentru Intel, există doar drivere open source.

primul instrument pe care îl utilizați ar trebui să fie probabil lspci, dar dacă sunteți interesat de mai multe informatii detaliate, puteți folosi lshw .

exemplu de pe laptopul meu:

Prompt>lspci | grep VGA 00:02.0 Controler compatibil VGA: Intel Corporation Core Processor Integrated Graphics Controller (rev 02) 01:00.0 Controler compatibil VGA: nVidia Corporation Device 0df0 (rev a1) prompt>

și fragmentul corespunzător din lshw:

*-pci:0 descriere: PCI bridge product: Core Processor PCI Express x16 Root Port Furnizor: Intel Corporation ID fizic: 1 info bus: :00:01.0 versiune: 02 lățime: 32 biți ceas: 33MHz capabilități: pci pm msi pciexpress normal_decode bus_master cap_list configurație: driver=pcieport resurse: irq:42 ioport:2000 (dimensiune=4096) memorie:fb000000-fbffffff ioport:f0000000(dimensiune=167772160) *-afișare descriere: produs controler compatibil VGA: nVidia Corporation furnizor: nVidia Corporation id fizic: 0 informații magistrală: :01:00.0 versiunea: a1 lățime: Ceas pe 64 de biți: 33MHz capabilități: pm msi pciexpress vga_controller bus_master cap_list configurație: driver=nouveau latency=0 resurse: irq:16 memorie:fb000000-fbffffff memorie:f0000000-f7ffffff memorie:f8000ffffff:f8000ffffff:f8000ffffff:f8000ffffff:f80000000 -afișare descriere: Controler compatibil VGA produs: Core Processor Integrated Graphics Controller Vânzător: Intel Corporation ID fizic: 2 info bus.