WebGL funktioniert im Raspberry Pi Chromium Browser nicht ordnungsgemäß

10

Ich habe ein Problem mit WebGL im Chromium-Browser von Raspberry Pi 3. Ich habe die erforderlichen Einstellungen vorgenommen, aber es ist nichts passiert.

Hier sind meine Informationen

  • Gerät: Raspberry Pi 3
  • Betriebssystem: Linux raspberrypi 4.9.80-v7 + # 1098 SMP Fr 9. März 19:11:42 GMT 2018 armv7l GNU / Linux (Raspian Stretch mit Desktop, ich versuche auch Lite)
  • Browser: Chrom-Browser-Version => Chrom 60.0.3112.89 Erstellt auf Ubuntu 14.04, läuft auf Raspbian 9.3
  • Grafiktreiber : vc4-kms-v3d

Hier sind die Ergebnisse von get.webgl.org:

get.webgl.org Ergebnisse

Hier sind die Ergebnisse des Beispiels von threejs.org ("webgl_animation_cloth"):

Das Beispiel "webgl_animation_cloth" von threejs.org zeigt

Ich habe die gleichen Websites auf Firefox iceweasel getestet.
Sie funktionieren wie in diesen Screenshots gezeigt:

get.webgl.org Ergebnisse (iceweasel)

Das Beispiel "webgl_animation_cloth" von threejs.org (iceweasel)

Ich habe verschiedene Einstellungen für chrome: // flags versucht, aber nichts wurde geändert

Wenn ich chromium-browservon der Kommandozeile aus starte, sehe ich

libgl error: MESA-LOADER: failed to retrieve device information

aber @ eric-anholt sagt, dies sollte keine wichtigen auswirkungen haben.

Mehmet Bayrak
quelle
Klingt für mich nach einem Fehler. Hast du es schon den Chrom-Jungs gemeldet?
John Keates
Ich habe die Frage bearbeitet und es wird folgende Fehlermeldung angezeigt: MESA-LOADER: Geräteinformationen konnten nicht abgerufen werden. Ich versuche, den Befehl glxgears auszuführen, um mesa zu testen. Es gibt den gleichen Fehler, aber es funktioniert, so dass ich verwirrt bin :(
Mehmet Bayrak
1
Das ist nur Rauschen von Code, der auf ARM-Plattformen schlecht ist. Es ist kein Signal, dass etwas kaputt ist.
Eric Anholt

Antworten:

7

Okay, ich habe hier eine Lösung gefunden: https://www.raspberrypi.org/forums/viewtopic.php?t=191087

  1. Verwenden Sie raspi-config, um OpenGL (Full KMS) zu aktivieren.
  2. entferne "--disable-gpu-compositing '' aus / etc / chrom-browser / customizations / 00-rpi-var

ist alles, was Sie tun müssen, um den https://get.webgl.org Würfel zum Drehen zu bringen.

Funktioniert bei mir!

JoeyCK
quelle
Sobald Sie die Firefox-Screenshots sehen, ist OpenGL (Full KMS oder Fake KMS) aktiviert, und ich versuche die Flags. Ich denke das ist der interessante Teil, alles scheint legal zu sein, aber der Würfel wird nicht gezeigt !!
Mehmet Bayrak
@MehmetBayrak Haben Sie versucht, die Datei wie in meiner Antwort angegeben zu bearbeiten? Ich benutze keine Flaggen.
JoeyCK
1
Ja!, Sie haben Recht, wenn ich "/ etc / chrom-browser / customizations / 00-rpi-var" bearbeitet habe, es funktioniert! danke
Mehmet Bayrak
2

Scheint, als ob Sie nicht der einzige mit diesem Problem sind. Möglicherweise möchten Sie Ihre chrome://flashSeite überprüfen und feststellen, ob Sie Treiber verwenden, die Sie nicht verwenden sollten. Testen und überprüfen Sie jeden Treiber entsprechend auf Funktion. Deinstallieren Sie anschließend Chrom und installieren Sie es erneut, um festzustellen, ob sich etwas geändert hat:

sudo apt remove chromium-browser
rm -rf ~/.cache/chromium
rm -rf ~/.config/chromium
sudo rm -rf /etc/chromium-browser

Wenn diese Lösung nicht funktioniert ...

Die meisten Benutzer melden das Problem im Zusammenhang mit ihrer Grafikkarte. Sie können dieses Problem anzeigen, indem Sie nachsehen chrome://gpu/, ob die Hardwarebeschleunigung für WebGL aktiviert ist. Wenn dies nicht der Fall ist, liegt dies wahrscheinlich daran, dass Chrom die GPU des RPi auf die schwarze Liste gesetzt hat. Aus diesem Grund erhalten Sie die folgende Eingabeaufforderung

**failed to retrieve device information**

weil die GPU Ihres Pi auf die schwarze Liste gesetzt wurde. Sie müssen einen Weg finden, Chromium zum Starten zu bringen, während Sie die schwarze Liste ignorieren. Ich weiß, dass der Befehl für Google Chrome lautet

google-chrome --enable-webgl --ignore-gpu-blacklist

Vielleicht möchten Sie etwas Ähnliches für Chromium ausprobieren.

Verwenden Sie in der Zwischenzeit Firefox, wenn Sie können, und überprüfen Sie den Link hier , in dem Blacklists in WebGL erläutert werden. Möglicherweise möchten Sie dies auch den Entwicklern als Fehler melden.

----AKTUALISIEREN----

Der folgende Befehl sollte Ihr Problem beheben:

chromium-browser --enable-webgl --ignore-gpu-blacklist
Aden
quelle
Ich brauche einen Chrom-Browser auf meinem RPI, ich kann kein Firefox verwenden. Ich denke, es ist ein Fehler. Ich versuche bereits, Chrom und auch mit --ignore-gpu-blacklist flag neu zu installieren und es funktioniert nicht mehr. Ich überprüfe das Chrome: // Flash. GL_RENDERER: Gallium 0.4 auf VC4 V3D 2.1 und GL_VERSION: 2.1 Mesa 13.0.6 . Andere scheinen normal zu sein.
Mehmet Bayrak
Nur ein Gedanke, den ich nirgendwo gefunden habe: Vielleicht könnten Sie eine ältere Version von Chrom herunterladen und erneut testen. Wenn es sich um einen Fehler handelt, ist es durchaus möglich, dass ein älteres Chrom-Modell einwandfrei funktioniert.
Aden
1
ES FUNKTIONIERTE! ES FUNKTIONIERTE! Laufen chromium-browser --enable-webgl --ignore-gpu-blacklistgibt eine Menge Fehler zurück, aber es startet Chrom und das get.webgl.orgfunktioniert!
Scitronboy
1

Ich fand, dass das Folgende für "Raspbian GNU / Linux 9 (Stretch)" funktioniert: Um herauszufinden, welche Version Sie haben, geben Sie "cat / etc / os-release" in ein Terminal ein.

  1. Konsole: sudo raspi-config Wählen Sie unter "7 erweiterte Optionen" / "A7 GL-Treiber" "G2 GL (Fake KMS)" aus.

  2. Desktop: Einstellungen / Hinzufügen Software entfernen Suche nach "Chrome" und wählen Sie "WebDriver-Treiber für den Chromium-Browser", klicken Sie auf "OK".

AJBauer
quelle