Add support for non-isolated blending in vello_cpu#1159
Conversation
sagudev
left a comment
There was a problem hiding this comment.
I am testing this on servo WPT and I did a quick look. I think this should be reviewed by someone with deeper understanding of sparse strips.
This comment was marked as outdated.
This comment was marked as outdated.
|
New proper results: https://github.com/sagudev/servo/actions/runs/16947826831/attempts/1#summary-48036644654. We should still fix #1119 to match Vello classic. |
b7dc640 to
233b33a
Compare
3159100 to
d5ceb79
Compare
d5ceb79 to
f49beb2
Compare
|
@sagudev Do you think you would have time to do a high-level review and approve if it looks okay? Otherwise I feel like this PR will remain in limbo forever. 😄 It's not that big of a change so I don't think landing this should cause any trouble, especially since existing blending tests work just fine. |
sagudev
left a comment
There was a problem hiding this comment.
Looks alright from higher perspective.
| self.reset_paint_transform(); | ||
| #[cfg(feature = "text")] | ||
| self.glyph_caches.as_mut().unwrap().maintain(); | ||
| self.blend_mode = BlendMode::new(Mix::Normal, Compose::SrcOver); |
There was a problem hiding this comment.
Couldn't use BlendMode::default() consistently in here and other places?
There was a problem hiding this comment.
Nope, because right now the default is Mix::Clip which I want to avoid using.
There was a problem hiding this comment.
Mix::Clip is not default anymore: https://docs.rs/peniko/latest/src/peniko/blend.rs.html#184-191, see linebender/peniko#144.
There was a problem hiding this comment.
Oh! I guess we can change it then!
|
Hi @LaurenzV, would you mind updating the |
|
Oh yeah sure, will try to do that soon! |
|
I opened a PR. |
I also removed the blend optimization since IMO it causes more troubles than it brings benefits.
Reference images match the ones in
tiny-skia.