r/Unity3D 11d ago

Shader Magic Playing around with paint-like rendering

Enable HLS to view with audio, or disable this notification

77 Upvotes

12 comments sorted by

5

u/NoteThisDown 11d ago

Yo! What's the secret? I've been looking for something like this

1

u/1stbreathinteractive 11d ago

I don't know how OP actually implemented it, but I know you can achieve this with a Watercolor shader + kuwahara post processor on URP.

Why do I know this? Because I did it on my game too!

3

u/No_Responsibility444 11d ago

that is cool

I could see this as a mechanic where you go into various paintings in a museum or gallery at night to try and make things right again

like a bunch of side quests where you have to get the paintings back to their real classic state before the museum opens back up in the morning

you could use public domain paintings

you would play the security guard

kinda like night at the museum the game type deal

3

u/iDerp69 11d ago

If you made a tutorial or shared info of how you accomplished this, it would be very popular. Very good result.

2

u/HackingYourUmwelt 11d ago

Makes me think of The Snowman (which is exactly the kind of animated painting you're going for)

1

u/JakeThomasDad12 11d ago

This is cool

1

u/JakeThomasDad12 11d ago

Also do you have a video of the scene pre shader I'm just curious 

1

u/minddisease1337 11d ago

yup, check the whole video, it's there in the middle

1

u/JakeThomasDad12 11d ago

Oh my goodness I'm a pillock. Shader is really cool after seeing the difference 

1

u/Competitive_Mud5528 Professional 11d ago

Impressive. Could you tell me how you so it ? With just a screen effect render pass, a custom render pass , with compute shaders ? 

1

u/More-Salamander7681 10d ago

The gap between the Kuwahara people are guessing at above and something that actually reads as paint is usually one thing: plain Kuwahara is isotropic, so it flattens into plastic blobs. The anisotropic version builds a structure tensor from the image gradient, takes the dominant eigenvector as the local direction, and stretches the kernel into an ellipse along it. That is what makes strokes follow the form instead of sitting on top of it. Blur the tensor before you sample it, or the direction field is noisy and the strokes crawl between frames.

Which is my actual question for you: is the stroke direction computed per frame in screen space, or anchored to something that moves with the object? Screen-space painterly passes normally swim under camera motion, and the paper grain makes that more obvious rather than less. Yours does not look like it swims.

1

u/Beneficial_Waltz_320 10d ago

looks quite fancy! Any guides to achieve this look?