Am 5. März, nach einem halben Jahr Entwicklung und über einhundert Commits, wurde die Veröffentlichung 0.100.0 des Projekts PortableGL, das eine Software-Implementierung der grafischen API OpenGL 3.x darstellt, die vollständig in C geschrieben wurde. Theoretisch kann PortableGL in allen Anwendungen verwendet werden, die Texturen oder Framebuffer als Eingabedaten akzeptieren. Der Code ist als eine einzige Header-Datei organisiert und wird verbreitet unterliegt der MIT-Lizenz.
Das Projekt hat Ziele wie Portabilität, Konformität mit der OpenGL-API, Benutzerfreundlichkeit, einfachen Code und hohe Leistung definiert. Zu den Anwendungsbereichen gehören das Lernen von Konzepten zur Erstellung grafischer APIs, die Verwendung für die 3D-Grafikbearbeitung auf Systemen ohne GPU und die Integration der OpenGL-Unterstützung in spezifische Betriebssysteme, für die das Mesa3D-Paket nicht portiert wurde. Von den verfügbaren Projekten, die PortableGL verwenden, wird erwähnt Port Minecraft-ähnlichen Spiele Craft.
In der neuen Version wird die Erweiterung der Funktionen und Möglichkeiten von OpenGL fortgesetzt: OpenGL-Funktionen zur Bearbeitung von Texturparametern wurden implementiert, ebenso wie GLSL-Funktionen texelFetch[1-3]D(). Die Unterstützung zur Auswahl des Pixelformats während der Kompilierung und die Verwendung beliebiger 32- und 16-Bit-Formate von Farb-Puffern wurde hinzugefügt. Die Formate PGL_D24S8 und PGL_D16 wurden implementiert. Es wurde die Möglichkeit zur Festlegung einer vordefinierten Speicheranordnung hinzugefügt.
Quelle: linux.org.ru
