WebGL ne fonctionne pas correctement sur le navigateur Raspberry Pi Chromium


10

J'ai un problème avec WebGL sur le navigateur Chromium du Raspberry Pi 3. J'ai fait les réglages requis mais rien ne s'est produit.

Voici mes informations

  • Appareil: Raspberry Pi 3
  • OS: Linux raspberrypi 4.9.80-v7 + # 1098 SMP ven 9 mars 19:11:42 GMT 2018 armv7l GNU / Linux (Raspian Stretch avec ordinateur de bureau, j'essaye aussi lite)
  • Navigateur: version chrome-browser => Chromium 60.0.3112.89 Construit sur Ubuntu 14.04, fonctionnant sur Raspbian 9.3
  • Pilote graphique: vc4-kms-v3d

Voici les résultats de get.webgl.org:

résultats de get.webgl.org

Voici l'exemple de threejs.org ("webgl_animation_cloth"):

Résultats de l'exemple de threejs.org "webgl_animation_cloth"

J'ai testé les mêmes sites Web sur firefox iceweasel.
Ils fonctionnent comme le montrent ces captures d'écran:

Résultats de get.webgl.org (iceweasel)

Résultats de l'exemple de threejs.org "webgl_animation_cloth" (iceweasel)

J'ai essayé plusieurs paramètres sur chrome: // flags mais rien n'est changé

Lorsque je démarre à chromium-browserpartir de la ligne de commande, je vois

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

mais @ eric-anholt dit que cela ne devrait pas avoir d'effets importants.


Cela ressemble à un bug pour moi. Vous l'avez déjà signalé aux gars du chrome?
John Keates

J'ai édité la question, cela me donne cette erreur: MESA-LOADER: impossible de récupérer les informations sur l'appareil. J'essaie d'exécuter la commande glxgears afin de tester mesa, cela donne la même erreur mais cela fonctionne, donc je suis confus :(
Mehmet Bayrak

1
C'est juste du bruit provenant d'un code mauvais sur les plates-formes ARM. Ce n'est pas un signal que quelque chose est cassé.
Eric Anholt

Réponses:


7

D'accord, j'ai donc trouvé une solution ici: https://www.raspberrypi.org/forums/viewtopic.php?t=191087

  1. utiliser raspi-config pour activer OpenGL (Full KMS)
  2. supprimer "--disable-gpu-compositing '' de / etc / chromium-browser / customisations / 00-rpi-var

est tout ce que vous devez faire pour faire tourner le cube https://get.webgl.org .

Travaille pour moi!


Comme vous voyez les captures d'écran de Firefox, OpenGL (Full KMS ou Fake KMS) est activé, et j'essaie les drapeaux. Je pense que c'est la partie intéressante, tout semble légal mais le cube n'est pas montré !!
Mehmet Bayrak

@MehmetBayrak avez-vous essayé de modifier le fichier comme indiqué dans ma réponse? Je n'utilise aucun indicateur.
JoeyCK

1
Oui !, vous avez raison quand j'ai édité "/ etc / chrome-browser / customisations / 00-rpi-var", ça marche! merci
Mehmet Bayrak

2

On dirait que vous n'êtes pas le seul à avoir ce problème. Vous voudrez peut-être vérifier votre chrome://flashpage et voir si vous utilisez des pilotes que vous ne devriez pas utiliser. Testez et vérifiez chaque pilote en conséquence pour la fonction. Ensuite, désinstallez puis réinstallez Chrome pour voir si quelque chose a changé:

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

Si cette solution ne fonctionne pas ...

La plupart des gens signalent le problème lié à leur carte graphique, vous pouvez voir ce problème en allant chrome://gpu/et en voyant si l'accélération matérielle est activée pour WebGL. Si ce n'est pas le cas, c'est probablement parce que le chrome a mis sur liste noire le GPU du RPi; c'est pourquoi vous obtenez l'invite suivante

**failed to retrieve device information**

parce que le GPU de votre Pi a été mis sur liste noire. Vous devrez trouver un moyen de démarrer Chromium tout en ignorant la liste noire. Je sais que pour Google Chrome, la commande est

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

Donc, vous voudrez peut-être essayer quelque chose de similaire pour le chrome.

En attendant, utilisez Firefox si vous le pouvez, et vérifiez le lien ici pour discuter des listes noires sur WebGL, vous pouvez également signaler cela comme un bug aux développeurs.

----METTRE À JOUR----

La commande suivante devrait résoudre votre problème:

chromium-browser --enable-webgl --ignore-gpu-blacklist

J'ai besoin de chrome-browser sur mon rpi, je ne peux pas utiliser Firefox. Je pense que c'est un bug. J'essaie déjà de réinstaller chrome et également avec le drapeau --ignore-gpu-blacklist et cela ne fonctionne plus. Je vérifie le chrome: // flash. GL_RENDERER: Gallium 0.4 sur VC4 V3D 2.1 et GL_VERSION: 2.1 Mesa 13.0.6 . D'autres semblent normaux.
Mehmet Bayrak

juste une pensée que je n'ai trouvée nulle part: vous pourriez peut-être télécharger une ancienne version de chrome et la tester à nouveau, si c'est un bug, il est tout à fait possible qu'un ancien modèle de chrome fonctionne correctement.
Aden

1
ÇA A MARCHÉ! ÇA A MARCHÉ! courir chromium-browser --enable-webgl --ignore-gpu-blacklistrenvoie une tonne d'erreurs, mais ça démarre le chrome et ça get.webgl.orgmarche!
scitronboy

1

J'ai trouvé que cela fonctionne pour "Raspbian GNU / Linux 9 (stretch)": Pour savoir quelle version vous avez tapez "cat / etc / os-release" dans un terminal.

  1. Console: sudo raspi-config Sous "7 Options avancées" / "Pilote A7 GL" choisissez "G2 GL (Faux KMS)"

  2. Bureau: Préférences / Ajouter Supprimer le logiciel, recherchez "Chrome" et choisissez "Pilote WebDriver pour le navigateur Chromium", cliquez sur "OK"

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.