Szokatlan fejlemény: új OpenGL-kiterjesztések kerültek a hivatalos regiszterbe

Segítséget kaptál? Szívesen töltöd itt az idődet? Visszajársz hozzánk? Támogasd a munkákat: Ko-fi és Paypal!

kami911 képe

Az utóbbi években ritkaságszámba ment, hogy új OpenGL-kiterjesztések (OpenGL extensions) jelenjenek meg, hiszen a fejlesztők és a gyártók többsége már a Vulkan API-t részesíti előnyben – modern architektúrája, széles hardvertámogatása és gyorsan bővülő szoftveres ökoszisztémája miatt. Az idei október azonban különleges kivételt jelent: több új OpenGL-kiterjesztést is felvettek a hivatalos OpenGL-regiszterbe. Korábban már meglepetést okozott, amikor a hónap elején bekerült a GL_EXT_mesh_shader kiterjesztés, amely a mesh shader támogatást hozza el cross-vendor formában. Ezt a bővítményt a Nvidium projekt kezdeményezte, mivel a Minecraft Sodium renderelőmotorja számára egy egységes, nem csak az NVIDIA-ra korlátozódó megoldásra volt szükség (szemben a gyártóspecifikus GL_NV_mesh_shader kiterjesztéssel).

A héten pedig újabb fontos fejlesztések kerültek a regiszterbe:

  • GL_EXT_shader_realtime_clock – a Collabora egyik fejlesztője jegyzi ezt a bővítményt, amely a korábbi GL_ARB_shader_clock kiterjesztésre épít. A funkció lehetővé teszi egy valós idejű számláló (real-time counter) használatát a shaderen belül, így például precíz időzítések vagy szinkronizációs effektek megvalósítását.
  • GL_EXT_shader_texture_samples – a Google fejlesztése, amely új beépített GLSL-függvényeket biztosít a textúrák mintavételezési (sampling) jellemzőinek, például a minták számának lekérdezésére.

További frissítések is történtek:

  • A legtöbb GL_EXT_texture_sRGB formátum mostantól desktop OpenGL core szinten is támogatott.
  • Az eddig csak OpenGL ES 2-ben elérhető GL_EXT_fragment_shading_rate kiterjesztés mostantól az asztali OpenGL-verziókban is használható.

Mindez azt mutatja, hogy bár az OpenGL fejlesztése már nem tartozik a fő irányvonalak közé, a közösség és néhány vállalat továbbra is gondoskodik arról, hogy a klasszikus grafikus API lépést tartson bizonyos modern igényekkel. Ez különösen azok számára jó hír, akik régi, stabil OpenGL-alapú alkalmazásokat tartanak karban, vagy többplatformos fejlesztési környezetben dolgoznak, ahol a Vulkanra való teljes átállás még nem lehetséges.