Oprogramowanie

OpenGL 4.2 - udostępniono specyfikację

W rok po udostępnieniu OpenGL 4.1, firma Khronos Group zajmująca się jego rozwojem poinformowała o wydaniu specyfiki OpenGL 4.2. Nowa wersja tego znanego graficznego API przynosi kilka ciekawych nowości, które rozszerzają jego funkcjonalność i podnoszą wydajność aplikacji.logo api opengl

OpenGL jest specyfikacją uniwersalnego API do generowania grafiki. Działanie OpenGL jest zbliżone m.in. do X Window System, który działa w formie klient-serwer, gdzie klientem jest aplikacja wykorzystująca OpenGL i zlecająca układowi graficznemu operacje graficzne do wykonania, które układ ma generować za pośrednictwem serwera czyli implementacji OpenGL.

Specyfikacja jest bardzo często wykorzystywana przez gry komputerowe, wygaszacze ekranu czy też efekty pulpitu w systemach Linuksowych. OpenGL jest największym konkurentem dobrze znanego rozwiania Direct3D opracowanego i rozwijanego przez Microsoft.

W najnowszej wersji zachowano kompatybilność wsteczną z poprzednimi wersjami tego API. Dodano obsługę shaderów z atomowym licznikiem i operacjami t.j. przechwytywanie, ładowanie, przechowywanie, modyfikowanie i zapisywanie atomowe do jednego poziomu tekstury.

Ponadto umożliwiono sprawniejsze przekształcanie i replikowanie obiektów poddanych tesselacji w celu sprawniejszej obsługi przez procesor graficzny.

Od teraz możliwe jest modyfikowanie dowolnego typu skompresowanych tekstur, bez konieczności pobierania ponownie wszystkich tekstur do układu GPU - co pozwoli na znaczne przyśpieszenie działania aplikacji. Dodano obsługę umieszczania wielu wartości 8 i 16-bitowych w jednej 32-bitowej wartości - co ma pozwolić na bardziej efektywniejsze przetwarzanie shaderów przy jednoczesnym zmniejszeniu zużycia pamięci i przepustowości.
 

przykładowy render z opengl wykonany przez api opengl
 

Nowa wersja OpenGL zmniejsza ilość wymienianych informacji pomiędzy CPU a GPU, przyspiesza renderowanie pikseli, poprawia ogólną wydajność API. Deweloperzy w rozwiązaniach wykorzystujących nowe OpenGL będą mieli możliwość tworzenia bardziej zaawansowanych projektów w lepszej oprawie wizualnej na różne platformy sprzętowe, wykorzystując ten sam zestaw instrukcji.

Co ciekawe OpenGL 4.2 jest już siódmą wersją standardu w ciągu ostatnich trzech lat, natomiast konkurencyjny DirectX doczekał się jedynie jeden wersji o numerze 11. Mimo, iż OpenGL przez większość deweloperów jest uważany za bardziej rozbudowane i funkcjonalne API to wciąż ustępuje ono w swojej popularności rozwiązaniom Microsoftu.

Niewątpliwą zaletą OpenGL jest możliwość wykorzystania na wszystkich popularnych platformach od Windows, Mac OS, Linux a kończąc na urządzeniach mobilnych. Co ciekawe kod napisany dla jednej platformy sprzętowej zachowuje całkowitą kompatybilność przy zastosowaniu go w innej.

Warto odnotować, iż NVIDIA udostępniła już sterowniki zapewniające obsługę nowego API OpenGL 4.2 w swoich kartach graficznych GeForce 400 i 500 oraz profesjonalnych Quadro Plex i Quadro.
 

Więcej o OpenGL:

Źródło: Khronos Group, OpenGL, TechConnect, OSWorld 

Komentarze

27
Zaloguj się, aby skomentować
avatar
Komentowanie dostępne jest tylko dla zarejestrowanych użytkowników serwisu.
  • avatar
    Konto usunięte
    1
    Jaka beznadzieja z DX11. M$ zabija na wszystkie sposoby lepszą konkurencję. Ale nie pierwszy i nie ostatni raz. Do tego trzeba mieć nowego OS-a by mieć nawy DX - paranoja.
    Ja bym se pograł w tą samą grę na wszystkich OS-ach z wykorzystaniem OGL.
    • avatar
      Chiny_X
      1
      zapewne M$ płaci twórcom gier, tak jak intel swojego czasu producentom sprzętu
      • avatar
        Konto usunięte
        0
        Kiedy będą wprowadzone karty z OpenGL 4.2 ?
        • avatar
          Konto usunięte
          0
          Jak tam, 4.2 doszedł do DX 11 w końcu? Bo 3.0 to ledwo DX10.
          • avatar
            Konto usunięte
            0
            Mogliby zrobić jakiś benchmark na PC i Androida wykorzystujący OpenGL żeby dało się zweryfikować te bajki co piszą o mocy obliczeniowej architektury ARM.
            • avatar
              Hadii
              0
              Na stronie NV widnieje dla nowych sterowników taki feature:

              - Supports OpenGL 4.1 on GeForce 400 series and later GPUs.
              • avatar
                Maciej Lewczuk
                0
                Gdyby to było tak rozpowszechnione jak na demoscenie: http://www.geeks3d.com/20110809/demoscene-assembly-2011-demo-and-4k-productions/
                • avatar
                  NomadDemon
                  0
                  dobrze, robic nowe wersje, zabierac tort deiksowi