On Mon, Nov 19, 2018 at 11:04 PM Henri Verbeet hverbeet@gmail.com wrote:
On Mon, 19 Nov 2018 at 21:52, Matteo Bruni matteo.mystral@gmail.com wrote:
I'm also unsure whether StretchRect() covers all the cases of our interest. After staring at the StretchRect() tests + docs for a while, my current understanding is that it should always work for us, we're probably doing an extra copy for off-screen plain surfaces but that's no big deal.
Well, there's one case we really care about, and that's regular non-dynamic default pool textures. StretchRect() is the only way to get the data out of those, GetRenderTargetData() isn't an option. It's true that for e.g. render targets and offscreen plain surfaces there are more efficient options, but I'd consider those optimisations. Note though that after the next patch in this series, this is essentially a fall-back path for when we can't StretchRect() directly between the source and destination.
Right, I guess I'm not as optimistic about applications using suitable filter settings. But sure, certainly stuff for further, possible optimizations.