-
-
Notifications
You must be signed in to change notification settings - Fork 578
New node: Blur #2477
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
New node: Blur #2477
Conversation
Typo in commit message |
I'll try to review this tomorrow. |
Is there a specific reason why you chose to convert this to an image data type first instead of using or inbuilt one? Also @Keavon should blur happen in srgb or linear? They should give different results, so we have to think about which one is correct / what is compatible with other tools |
It also looks like the current implementation quantizes the values to 8 bit which is most likely not what we want. We should also take SIMD friendliness into account here and potentially try to re-enable that target flag and hope that the chrome bug from two years ago has been fixed |
We should have both linear and gamma, with linear as default. https://www.youtube.com/watch?v=LKnqECcg6Gw |
…lorspace in raster category
606c186
to
4182032
Compare
I've updated it to convert from linear/nonlinear before/after blurring using the functions from graphene_core::raster::Channel and changed from u8 values to f32 |
Thanks. In the future, could you please add your followup work as additional commits instead of amending the original commit, so it's possible to compare them? |
Yes ill keep that in mind |
A couple code review notes before I do a proper code review:
|
aa7ff13
to
e11b57a
Compare
I pushed some code review improvements. We still will need you to remove usage of the |
Hi @calvintvu, just checking in to see if this is something you're still interested in finishing. Hope to hear from you! Thanks 😄 |
Hey @Keavon yeah I can take a look and implement the changes, just busy with some other things at the moment |
!build |
|
|
Here is a test file you can work with: |
!build |
|
It's looking like we need to either premultiply or not premultiply the alpha (the opposite of what's currently being done) to avoid dark areas around the blurred rectangle edges when we have a transparent instead of a white background. We should have functions to premult and unpremult available in the Color method. |
Closes #995
Implements both gaussian and box blurs under raster category
Screen.Recording.mp4