WebGL no funciona correctamente en Raspberry Pi Chromium Browser

10

Tengo un problema con WebGL en el navegador Chromium de Raspberry Pi 3. Hice la configuración requerida pero no pasó nada.

Aqui esta mi informacion

  • Dispositivo: Raspberry Pi 3
  • SO: Linux raspberrypi 4.9.80-v7 + # 1098 SMP viernes 9 de marzo 19:11:42 GMT 2018 armv7l GNU / Linux (Raspian Stretch con escritorio, también intento lite)
  • Navegador: versión de navegador chromium => Chromium 60.0.3112.89 Construido en Ubuntu 14.04, ejecutándose en Raspbian 9.3
  • Controlador de gráficos: vc4-kms-v3d

Aquí están los resultados de get.webgl.org:

resultados de get.webgl.org

Estos son los resultados del ejemplo threejs.org ("webgl_animation_cloth"):

Resultados de threejs.org ejemplo "webgl_animation_cloth"

Probé los mismos sitios web en firefox iceweasel.
Funcionan como se muestra en estas capturas de pantalla:

resultados de get.webgl.org (iceweasel)

Resultados de threejs.org de ejemplo "webgl_animation_cloth" (iceweasel)

Intenté varias configuraciones en Chrome: // flags pero nada ha cambiado

Cuando comienzo chromium-browserdesde la línea de comando, veo

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

pero @ eric-anholt dice que esto no debería tener efectos importantes.

Mehmet Bayrak
fuente
Suena como un error para mí. ¿Ya lo informó a los chicos de cromo?
John Keates
Edité la pregunta, me da este error: MESA-LOADER: no se pudo recuperar la información del dispositivo. Intento ejecutar el comando glxgears para probar la mesa, da el mismo error pero funciona, así que me confundo :(
Mehmet Bayrak
1
Eso es solo ruido de algún código que es malo en las plataformas ARM. No es una señal de que algo esté roto.
Eric Anholt

Respuestas:

7

Bien, entonces encontré una solución aquí: https://www.raspberrypi.org/forums/viewtopic.php?t=191087

  1. use raspi-config para habilitar OpenGL (Full KMS)
  2. eliminar "--disable-gpu-compositing '' de / etc / chromium-browser / personalizaciones / 00-rpi-var

es todo lo que necesita hacer para que el cubo https://get.webgl.org gire.

¡Funciona para mi!

JoeyCK
fuente
A medida que vea las capturas de pantalla de Firefox, OpenGL (Full KMS o Fake KMS) está habilitado, y pruebo las banderas. Creo que esta es la parte interesante, todo parece legal pero, ¡el cubo no se muestra!
Mehmet Bayrak
@MehmetBayrak, ¿intentaste editar el archivo como se indica en mi respuesta? No estoy usando ninguna bandera.
JoeyCK
1
¡Sí !, tienes razón cuando edité "/ etc / chromium-browser / personalizaciones / 00-rpi-var", ¡funciona! gracias
Mehmet Bayrak
2

Parece que no eres el único con este problema. Es posible que desee revisar su chrome://flashpágina y ver si está utilizando algún controlador que no debería. Pruebe y verifique cada controlador en consecuencia para la función. Luego, desinstale y luego reinstale chromium para ver si algo ha cambiado:

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

Si esta solución no funciona ...

La mayoría de las personas informan sobre el problema relacionado con su tarjeta gráfica, puede ver este problema yendo chrome://gpu/y viendo si la aceleración de hardware está habilitada para WebGL. Si no es así, probablemente porque el cromo ha incluido en la lista negra la GPU del RPi; por eso recibes el siguiente mensaje

**failed to retrieve device information**

porque la GPU de tu Pi ha sido incluida en la lista negra. Tendrás que encontrar una manera de hacer que Chromium comience mientras ignoras la lista negra. Sé que para Google Chrome el comando es

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

Entonces quizás quieras probar algo similar para Chromium.

Mientras tanto, use Firefox si puede, y revise el enlace aquí para discutir las listas negras en WebGL, también puede informar esto como un error a los desarrolladores.

----ACTUALIZAR----

El siguiente comando debería solucionar su problema:

chromium-browser --enable-webgl --ignore-gpu-blacklist
Adén
fuente
Necesito chromium-browser en mi rpi, no puedo usar firefox. Creo que es un error. Ya intento reinstalar chromium y también con --ignore-gpu-blacklist flag y ya no funciona. Compruebo el chrome: // flash. GL_RENDERER: Galio 0.4 en VC4 V3D 2.1 y GL_VERSION: 2.1 Mesa 13.0.6 . Otros parecen normales.
Mehmet Bayrak
solo un pensamiento, no encontré esto en ningún lado: tal vez podría descargar una versión anterior de chromium y probar esto nuevamente, si es un error, es completamente posible que un modelo anterior de chromium funcione bien.
Adén
1
¡FUNCIONÓ! ¡FUNCIONÓ! la ejecución chromium-browser --enable-webgl --ignore-gpu-blacklistdevuelve una tonelada de errores, ¡pero comienza el cromo y get.webgl.orgfunciona!
scitronboy
1

Descubrí que lo siguiente funciona para "Raspbian GNU / Linux 9 (stretch)": Para averiguar qué versión tiene, escriba "cat / etc / os-release" en un terminal.

  1. Consola: sudo raspi-config En "7 Opciones avanzadas" / "Controlador A7 GL", seleccione "G2 GL (KMS falso)"

  2. Escritorio: Preferencias / Agregar Eliminar Software busque "Chrome" y seleccione "Controlador WebDriver para el navegador Chromium", haga clic en "Aceptar"

AJBauer
fuente