SkiaRenderer: Support non-identity transforms for passthrough quads
This relaxes the requirements for tiled draw quads that can bypass a RenderPass. Previously, the content quad had to have an identity transform and fill the RenderPass's layer. With this change, the geometry and transform constraints go away, and the RPDQ params struct is updated to remember the additional transform that has to be applied to draw the content correctly. The base transform and the new transform are kept separate because the image filters of the render pass have to be processed in the base transform's coordinate space. However, we also don't want to just draw the base geometry with the content quad's textures because the texture coordinates may not map to a gfx::Rect anymore. Storing separate transforms cleanly handles both of these challenges. Bug: 1013735 Change-Id: I0a05d2aa318238dae093899c697fac6a84e5c261 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1860302 Commit-Queue: Michael Ludwig <michaelludwig@google.com> Reviewed-by:weiliangc <weiliangc@chromium.org> Cr-Commit-Position: refs/heads/master@{#708787}
Showing
This diff is collapsed.
Please register or sign in to comment