Compositor: Allow variable Kuwahara size #112946
This patch changes the size property of the Kuwahara into a node socket
to allow variable size Kuwahara.
Package build started. Download here when ready.
@DGruwier Here is a test build for variable size Kuwahara. It is only implemented for the realtime compositor for now. Can you give it a test and perhaps provide some practical examples?
@OmarEmaraDev Works beautifully! I'll make some examples of it in action.
@OmarEmaraDev Three quick practical examples:
The video is a "focus pull" using the Kuwahara node instead of blur, with zdepth as the size. With stylized looks being "in" in 3D animation at the moment, I'd be very surprised if we don't see this exact thing used in an animated movie down the road.
The render with the coffee carts is using an AOV to pass a custom object attribute to the filter, having effectively a "stylization amount" parameter you can turn up and down per object. It'll be really powerful once AOVs work in the realtime compositor.
The stock photo with the person and dog is just the same thing as the squirrel example from before, more of an image editing or more advanced rotoscoping example. Painted a dirty detail map and used it as the input for the size. I can imagine creating these masks with simple rotoscoping (or tracking it with something like EbSynth), but you could also paint this as a weight map on animated geometry and pass it to the compositor. Combine it with the depth map method and the per-object attribute method, and have ultimate control.
Works great, extremely powerful workflow for getting that nice stylized painterly look. I'll definitely be playing with this a lot.
(Windows / RTX 2060 Super)
There's noise with Classic mode with a low (or 0.0) size value.
It's very subtle when a scene's brightness is low. It's more apparent (like the picture above) with a strong light.
This happens only with this patch?
In the latest daily build:
Sorry I removed the emission material from the file while removing other materials to make it a simple file. Re-uploaded so it's in the reproducible condition right away.
@OmarEmaraDev This seems to be very powerful tool for artists.
Not sure what sort of feedback you're expecting at this time, but just general point apply about keeping parity with the CPU compositor. From studying the patch seems it is not hard to do so (unless I am missing something).
I think the description needs to be updated, as it is now implemented for all compositors. It is also not very clear to me whether the issue reported by Sun Kim is now fixed.
That being said the code looks fine, and I did not encounter issues while testing the patch. So we are getting very close!
@Sergey The reported issue is fixed indeed. I am not sure what you mean regarding the patch description, the statement of it being for the realtime compositor only is just a comment, would like it removed or updated?
@OmarEmaraDev The title says "Realtime compositor", but on the code side it seems to be implemented for the CPU compositor as well?
No due date set.
No dependencies set.
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?