Hardware-unterstütztes OpenGL

Mit den seit 10. Feb. 2016 verfügbaren Updates zu Raspbian Jessie werden neue Grafiktreiber verfügbar, mit denen die 3D-Funktionen des Broadcom-Chips erstmals auch unter Raspbian getestet werden können. Die 3D-Funktionen haben momentan noch experimentellen Status und müssen epxlizit aktiviert werden.

Voraussetzungen

Im Folgenden setze ich voraus, dass Sie eine aktuelle Raspbian-Jessie-Version mit allen Updates verwenden. Außerdem müssen die Pakete xcompmgr und libgl1-mesa-dri installiert sein:

sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install xcompmgr libgl1-mesa-dri

Beachten Sie außerdem, dass der Treiber momentan den Raspberry Pi 2 voraussetzt. Andere Pi-Modelle werden nicht unterstützt!

Aktivierung des neuen Treibers mit raspi-config

In einem Terminal-Fenster führen Sie nun sudo raspi-config aus. Bei den Advanced Options steht der neue Eintrag GL Driver zur Verfügung. Damit können Sie den neuen Treiber aktivieren.

OpenGL-Treiber aktivieren
OpenGL-Treiber aktivieren

Hinter den Kulissen wird dazu die Datei /boot/config.txt einfach um die folgende Zeile ergänzt.

# in der Datei /boot/config.txt
dtoverlay=vc4-kms-v3d

Die Einstellung wird erst mit einem Neustart des Minicomputers wirksam.

Test

Um die 3D-Funktionen auszuprobieren, installieren Sie die Pakete mesa-utils und neverball und führen dann die Kommandos glxinfo, glxgears und neverball aus. glxinfo zeigt diverse OpenGL-Parameter an. glxgears zeigt drei rotierende, ineinandergreifende Zahnräder. neverball ist ein einfaches 3D-Spiel.

sudo apt-get install mesa-utils neverball
glxinfo | grep render
  direct rendering: Yes
  OpenGL renderer string: Gallium 0.4 on VC4
  ...
Simples 3D-Spiel, läuft unter Raspbian mit 3D-Hardware-Unterstützung
Simples 3D-Spiel, läuft unter Raspbian mit 3D-Hardware-Unterstützung

Auch wenn es erfreulich ist, dass der Treiber an sich funktioniert, ist ein echter praktischer Nutzen bislang nicht zu erkennen. Mathematica profitiert in der aktuellen Version 10.3 nicht von den Treibern. Und zur optimalen Platform für 3D-Spiele wird der Raspberry Pi auch mit 3D-Treibern nicht werden.

Hintergrundinformationen

OpenGL ist eine Grafikbibliothek mit 3D-Funktionen. Je nach Treiber werden die Funktionen durch Software oder durch Hardware realisiert, also durch interne Funktionen der GPU (Graphical Processing Unit, beim Raspberry Pi in den Chip BCM2835/2836 integriert).

Broadcom hat im Winter 2013 die Spezifikationen des Grafikkerns frei gegeben und so die Entwicklung eines freien Treibers ermöglicht. Die offizielle Integration des Treibers unter dem Namen »VC4« in den Linux-Kernel hat mit Version 4.4 begonnen.

Quellen

2 Gedanken zu „Hardware-unterstütztes OpenGL“

  1. Ich habe den OpenGL-Teiber mit „ProjektM“ getestet. Das funktioniert für ein paar Sekunden auch sehr gut. Dann wird aber das farbige Rechteck, was beim Start des Raspi erscheint, als Vollbild eingeblendet. Erst wenn ich die Maus bewege verschwindet das Rechteck wieder um nach 1 bis 10 Sekunden wieder zu kommen. Wenn die Maus permanent bewegt wird läuft „ProjektM“ auch im Vollbildmodus absolut ruckelfrei.
    Kann man diesen „Bildschirmschoner“ irgendwie deaktivieren?

Kommentare sind geschlossen.