rerun-io / rerun

Visualize streams of multimodal data. Free, fast, easy to use, and simple to integrate. Built in Rust.
https://rerun.io/
Apache License 2.0
6.52k stars 330 forks source link

BGR_U8 Encoding doesn't work with WebGL #7454

Closed jleibs closed 1 month ago

jleibs commented 1 month ago
pixi run rerun-web
pixi run -e py python tests/python/release_checklist/check_bgr.py 

Browsers: Firefox and Chrome both show a black tile: image

Works fine on native.

OS: Arch, Wayland, Nvidia (560 drivers)

jleibs commented 1 month ago

Additional info from web console: image

Wumpf commented 1 month ago

Turns out webgl doesn't support BGR(A) https://registry.khronos.org/OpenGL-Refpages/es2.0/xhtml/glTexImage2D.xml

I wonder how this fell through the cracks. I definitely tested Web when introducing this feature and I'm fairly sure I had a look at WebGL and WebGPU (where this works via spec). Might want to check if some WebGL impls allow this or (more likely) I only tested WebGPU.

Also there's a wgpu bug here where it doesn't set the downlevel flag for missing texture support.

Wumpf commented 1 month ago

Somebody already logged this on wgpu :)