[Mesa-dev] panfrost: Questions regarding pan_wallpaper.c (and the 'reload FB content' logic in general)

Alyssa Rosenzweig alyssa at rosenzweig.io
Fri May 3 16:02:36 UTC 2019


> Actually, I tried several things, so I might have left it flipped at
> some point, but it doesn't work with with src_factor=one and
> dts_factor=zero.

Hum.

> Good question. I haven't dumped the buffers yet. Another thing to note:
> the texture I'm reloading from is using PIPE_FORMAT_B8G8R8X8_UNORM as
> a format, so no alpha component in there. I don't know exactly what
> happens in this case (do we have garbage in the alpha component?) :-/.

That just means the alpha component is implicitly cleared to 1.0 and
never really supposed to be read/written beyond that.

> We definitely bind the new sampler/texture, but I'm not sure we restore
> the old one. This being said, the version I have made using
> util_blitter_blit() was taking care of saving/restoring those, and I
> still had the issue :-/.

I meant the restore bit, but :/

> You mean we should apply the viewport transform on top, right?

No, this is ok, I just wanted to give context on what this is. The
input varying from OpenGL side (with a blitter implementation, for
instance), would be in the range (-1.0, +1.0), but then that gets
viewport transformed. With the default (0, 0)->(w, h) transform, it's
this. I guess for modified viewports this is a little, so we need to fix that
as well, but I don't think that's the issue here, since then blitter
would've been ok.

> Hehe, glad to hear that at least part of this investigation lead to
> something useful :-).

Haha :)


More information about the mesa-dev mailing list