WebGL nie działa poprawnie w przeglądarce Raspberry Pi Chromium

10

Mam problem z WebGL w przeglądarce Chromium Raspberry Pi 3. Zrobiłem wymagane ustawienia, ale nic się nie stało.

Oto moje informacje

  • Urządzenie: Raspberry Pi 3
  • System operacyjny: Linux raspberrypi 4.9.80-v7 + # 1098 SMP Pt Mar 9 19:11:42 GMT 2018 armv7l GNU / Linux (Raspian Stretch z pulpitem, również próbuję Lite)
  • Przeglądarka: wersja przeglądarki chromium => Chromium 60.0.3112.89 Zbudowany na Ubuntu 14.04, działający na Raspbian 9.3
  • Sterownik graficzny: vc4-kms-v3d

Oto wyniki get.webgl.org:

wyniki get.webgl.org

Oto przykład threejs.org („webgl_animation_cloth”):

Przykład threejs.org „webgl_animation_cloth” wyniki

Testowałem te same strony na firefox iceweasel.
Działają jak pokazano na tych zrzutach ekranu:

wyniki get.webgl.org (iceweasel)

Przykład threejs.org "webgl_animation_cloth" wyniki (iceweasel)

Próbowałem kilku ustawień na flagach chrome: //, ale nic się nie zmieniło

Kiedy zaczynam chromium-browserz wiersza poleceń, widzę

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

ale @ eric-anholt twierdzi, że nie powinno to mieć ważnych skutków.

Mehmet Bayrak
źródło
Brzmi dla mnie jak błąd. Zgłosiłeś to już chłopakom z chromu?
John Keates,
Zredagowałem pytanie, pojawia się następujący błąd: MESA-LOADER: nie udało się pobrać informacji o urządzeniu. Próbuję wykonać polecenie glxgears w celu przetestowania mesa, daje ten sam błąd, ale działa, więc się mylę :(
Mehmet Bayrak
1
To tylko szum z jakiegoś kodu, który jest zły na platformach ARM. To nie jest sygnał, że coś jest zepsute.
Eric Anholt,

Odpowiedzi:

7

Dobra, więc znalazłem rozwiązanie tutaj: https://www.raspberrypi.org/forums/viewtopic.php?t=191087

  1. użyj raspi-config, aby włączyć OpenGL (pełne KMS)
  2. usuń „--disable-gpu-compositing” z / etc / chromium-browser / customizations / 00-rpi-var

to wszystko, co musisz zrobić, aby przędzić kostkę https://get.webgl.org .

Pracuje dla mnie!

JoeyCK
źródło
Gdy zobaczysz zrzuty ekranu firefox, OpenGL (Full KMS lub Fake KMS) jest włączony i próbuję flagi. Myślę, że to interesująca część, wszystko wydaje się legalne, ale sześcian nie jest pokazywany !!
Mehmet Bayrak
@ MehmetBayrak, czy próbowałeś edytować plik zgodnie z moją odpowiedzią? Nie używam żadnych flag.
JoeyCK
1
Tak !, masz rację, kiedy edytowałem „/ etc / chromium-browser / customizations / 00-rpi-var”, to działa! dzięki
Mehmet Bayrak
2

Wygląda na to, że nie tylko ty masz ten problem. Możesz sprawdzić swoją chrome://flashstronę i sprawdzić, czy używasz sterowników, których nie powinieneś. Przetestuj i sprawdź odpowiednio każdy sterownik pod kątem działania. Następnie odinstaluj, a następnie zainstaluj ponownie chrom, aby zobaczyć, czy coś się zmieniło:

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

Jeśli to rozwiązanie nie działa ...

Większość osób zgłasza problem związany z kartą graficzną. Możesz go zobaczyć, przechodząc do strony chrome://gpu/i sprawdzając, czy dla WebGL jest włączone przyspieszenie sprzętowe. Jeśli nie, prawdopodobnie dlatego, że chrom znalazł się na czarnej liście GPU RPi; dlatego pojawia się następujący monit

**failed to retrieve device information**

ponieważ procesor graficzny twojego Pi został na czarnej liście. Musisz znaleźć sposób na rozpoczęcie Chromium, ignorując czarną listę. Wiem, że dla Google Chrome to polecenie

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

Możesz więc spróbować czegoś podobnego do Chromium.

W międzyczasie użyj przeglądarki Firefox, jeśli możesz, i sprawdź tutaj link do omawiania czarnych list na WebGL, możesz również zgłosić ten błąd jako błąd dla programistów.

----AKTUALIZACJA----

Następujące polecenie powinno rozwiązać problem:

chromium-browser --enable-webgl --ignore-gpu-blacklist
Aden
źródło
Potrzebuję przeglądarki chromu na moim RPI, nie mogę używać Firefoxa. Myślę, że to błąd. Już próbuję ponownie zainstalować chrom, a także flagę --ignore-gpu-blacklist i to nie działa ponownie. Sprawdzam chrome: // flash. GL_RENDERER: Gal 0,4 na VC4 V3D 2.1 i GL_VERSION: 2.1 Mesa 13.0.6 . Inni wydają się normalni.
Mehmet Bayrak
tylko myśl, że nigdzie tego nie znalazłem: może mógłbyś pobrać starszą wersję chromu i przetestować to jeszcze raz, jeśli jest to błąd, jest całkiem możliwe, że starszy model chromu powinien działać dobrze.
Aden
1
ZADZIAŁAŁO! ZADZIAŁAŁO! Uruchomienie chromium-browser --enable-webgl --ignore-gpu-blacklistzwraca mnóstwo błędów, ale uruchamia chrom i get.webgl.orgdziała!
scitronboy
1

Przekonałem się, że następujące działania działają dla „Raspbian GNU / Linux 9 (stretch)”: Aby dowiedzieć się, którą wersję masz w terminalu wpisz „cat / etc / os-release”.

  1. Konsola: sudo raspi-config W sekcji „7 Opcje zaawansowane” / „Sterownik A7 GL” wybierz „G2 GL (Fake KMS)”

  2. Pulpit: Preferencje / Dodaj Usuń oprogramowanie wyszukaj „Chrome” i wybierz „Sterownik WebDriver dla przeglądarki Chromium”, kliknij „OK”

AJBauer
źródło