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.
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.
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:
- Znamy już specyfikację OpenGL 4.1
- gDEBuger firmy Graphic Remedy obsługuje OpenGL
- SIlikom Graphic ogłąsza bankructwo
- Linux otrzyma natywną implementację DirectX 11
Źródło: Khronos Group, OpenGL, TechConnect, OSWorld
Komentarze
27Ja bym se pograł w tą samą grę na wszystkich OS-ach z wykorzystaniem OGL.
- Supports OpenGL 4.1 on GeForce 400 series and later GPUs.