Summary: | Raspberry Pi 4 renders textures wrong | ||
---|---|---|---|
Product: | Mesa | Reporter: | Daniel J <djazz> |
Component: | Drivers/DRI/v3d | Assignee: | Eric Anholt <eric> |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | medium | CC: | apinheiro |
Version: | 19.1 | ||
Hardware: | ARM | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
Main screen after game start. It should look like this: https://i.imgur.com/FqkEZlB.png (RPi 3)
apitrace from pi4 Video of the apitrace, what the pi renders Title screen, two atlas textures overlayed Title screen frame 800 for reference |
Description
Daniel J
2019-07-03 16:15:39 UTC
Created attachment 144692 [details]
apitrace from pi4
add apitrace
Created attachment 144693 [details]
Video of the apitrace, what the pi renders
Created attachment 144696 [details]
Title screen, two atlas textures overlayed
If I extract two textures, one is the actual one, and the other is the bad one, I see that they coordinates line up exactly where the real one should be. This is from frame 800 in apitrace. Somehow, wrong texture gets rendered instead of the one that should.
Created attachment 144697 [details]
Title screen frame 800 for reference
see above comment.
not sure if realted or not, but i had the same texture switching bug on another project the issue was due to uniforms and attributes not being kept "Uniforms are program object-specific state. They retain their values once loaded, and their values are restored whenever a program object is used, as long as the program object has not been re-linked" to solve the issue i had to re-set the uniforsm/attribute value when using the program i am unsure what the exact specs says regarding this, but the rpi4 does not keep those it seems Compiled latest Mesa and the problem went away. The version of Mesa that Raspbian comes with is too old (from April). Woo! https://www.youtube.com/watch?v=sTlY_hbe51Y |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.