This repository was archived by the owner on Feb 25, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 6k
[Impeller] drawAtlas blend mode. #38335
Merged
Merged
Changes from all commits
Commits
Show all changes
31 commits
Select commit
Hold shift + click to select a range
ff6f4de
fill out drawAtlas
jonahwilliams b2cc708
Merge branch 'master' of github.com:flutter/engine into drawAtlas
jonahwilliams 56bf47d
++
jonahwilliams 683e306
add drawVertices uage
jonahwilliams 8a1caa1
++
jonahwilliams 1a00d10
test fixes
jonahwilliams 0c23ff4
dont double divide
jonahwilliams 2a27640
CI cleanups
jonahwilliams 79c13e5
some texture coordinates work
jonahwilliams 785e18b
++
jonahwilliams a3a9476
basic texture coordiantes work
jonahwilliams ca273f4
++
jonahwilliams 3905cb1
++
jonahwilliams 426d6a1
++
jonahwilliams 94e6c24
Delete color blending
jonahwilliams 9dbe177
Merge branch 'master' of github.com:flutter/engine into drawAtlas
jonahwilliams 997bb3f
back out vertices change
jonahwilliams d8b3023
++
jonahwilliams a4f25cd
++
jonahwilliams 7d9e751
++
jonahwilliams 040a83f
remove atlas_fill from licenses
jonahwilliams e83fb61
blending cleanup
jonahwilliams 53a2189
Use sub-contents
jonahwilliams fd230d2
fix opacity for pipeline blends
jonahwilliams b3b51b2
use alpha in snapshot to avoid extra pass
jonahwilliams b422933
++
jonahwilliams c3aa8ce
++
jonahwilliams 979d1ef
Merge branch 'master' of github.com:flutter/engine into drawAtlas
jonahwilliams 417ee4f
Merge branch 'master' of github.com:flutter/engine into drawAtlas
jonahwilliams 4837acc
fix order
jonahwilliams 53e9c23
Merge branch 'master' of github.com:flutter/engine into drawAtlas
jonahwilliams File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, so looking over this, I think the destination color is getting double premultiplied. First it's getting multiplied here with the
GeometryColorPipeline
, and then the same value is getting multiplied into the destination via the new alpha in the blend filter.I think the better place to keep the
SetAlpha
business is here in this contents, and the newSetAlpha
stuff can be removed from the blend filter.If it still doesn't look like Skia after fixing the double premul, then I'd wonder if this alpha is supposed to be deferred to the final blend as opposed to impacting the destination color of the vertex color blend (I suspect you may have worked this out already, though).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That is what I thought, but I don't set the alpha here at all if I'm blending - its only used for the src or dst case. Double checking this