Na odbywających się targach SIGGRAPH w Los Angeles, grupa Khronos ogłosiła wydanie specyfikacji OpenGL 4.3, która przynosi nam sporo nowości w API do najbardziej zaawansowanego silnika graficznego 2D i 3D, dostępnego na wiele platform systemowych. Nowa wersja jest w pełni kompatybilna wstecz – pozwalając aplikacjom stopniowo korzystać nowych funkcji, przy zachowaniu pełnej przenośności na różne systemy i platformy. OpenGL 4.3 zostało zdefiniowane przez grupę roboczą OpenGL ARB (Architecture Review Board) i zawiera zaktualizowany język OpenGL Shading Language – GLSL 4.30.
Zmiany, jakie zaszły:
- Dodano shadery obliczeniowe (compute shaders), które można wykorzystać do rozproszonych obliczeń, jak obrazy, dźwięk i przetwarzanie geometryczne w potoku graficznym. Współpracują świetnie z OpenCL
- Dodano shader storage buffer objects, który uruchamia wierzchołki, teselację, geometrię, fragmenty oraz shadery obliczeniowe, w celu odczytu i zapisu dużej ilości danych, a także pozwala wymieniać dane pomiędzy różnymi stanami shaderów
- Pojawiły się zapytania parametryczne, aby móc sprawdzić rzeczywiste parametry tekstur na danej platformie
- Dodano wysokiej jakości kompresję tekstur ETC2 / EAC, jako podstawową funkcjonalność, która eliminuje potrzebę stosowania różnych zestawów tekstur na każdej platformie
- Pojawiła się możliwość debuggowania, w celu sprawdzania wiadomości, jakie wysyła aplikacja, podczas jej tworzenia
- Dodano podgląd tekstur, który umożliwia interpretowanie tekstur na różne sposoby, bez potrzeby powielania ich danych
- Dodano pośrednie rysowanie jednej rzeczy wielokrotnie, które umożliwia procesorowi graficznemu na obliczanie i przechowywanie parametrów dla wielu komend rysowania w buforze obiektów i ponownego ich wykorzystania, w jednej komendzie rysowania. Jest to efektywne podczas renderowania wielu obiektów z małą ilością trójkątów
- Zwiększono ochronę pamięci, która blokuje aplikacji odczyt i zapis poza jej buforami, na danych innej aplikacji
- Dodano solidne rozszerzenie dla wielu aplikacji, które zapewnia ochronę innych programów, w przypadku, kiedy jedna aplikacja spowoduje reset GPU
Jakby ktoś miał jakieś uwagi odnośnie tłumaczenia zmian, to chętnie poprawimy. Chętnie przyjmiemy pomoc od osoby, która zajmuje się na co dzień programowaniem z OpenGL.
Nie czytałem newsa, bo nie mam teraz czasu, więc nie zgłoszę uwag na jego temat teraz, ale zgłoszę propozycję newsa dotyczącego OpenGL ES 3.0, który również wyszedł i sporo zmienia w OpenGL dla urządzeń mobilnych.
Już jest pisany, także zaraz będzie :)
[…] book-keeping, oraz wsparcie dla konfiguracji obrotu i odbicia na każdy ekran. Dodano wsparcie dla OpenGL 4.3 oraz obsługę HDMI 3D Stereo dla układów GPU Quadro Kepler i nowszych. Usprawniono wydajność i […]
[…] book-keeping, oraz wsparcie dla konfiguracji obrotu i odbicia na każdy ekran. Dodano wsparcie dla OpenGL 4.3 oraz obsługę HDMI 3D Stereo dla układów GPU Quadro Kepler i nowszych. Usprawniono wydajność i […]
[…] Texture Compression 2 jest częścią specyfikacji OpenGL ES 3.0 oraz OpenGL 4.3, nie posiada żadnych patentów i aktualnie współpracuje jedynie ze sprzętem Intela. Nie jest […]
[…] kwotę do zaimplementowania rozszerzenia GL_KHR_debug, które jest wymagane przez specyfikację OpenGL 4.3. GL_KHR_debug ma także pomóc w ulepszeniu wydajności programistów OpenGL, pozwalając im na […]
[…] Timeless, które mieści się w 64kb pliku. Demo zostało napisane z wykorzystaniem specyfikacji OpenGL 4.3 i działa jedynie pod […]
[…] rysować kompozycje pulpitu menedżerom okien, w tym Compizowi. Zaimplementowano specyfikację OpenGL 4.3 i dodano wsparcie dla jądra Linux […]
[…] OpenGL 4.3 – 6 sierpnia 2012 […]