scratches around relflection

here’s my sugestion in practice:

Probably it won’t look good for animations as the noise map is not fixed to the surface, (but in reality you normally just see each scratch just from one angle, so maybe it can work)

I’ve just used 8 directions, but you can add more. The scratches’ size can be controlled by the size value from the noise texture, and for the quantity just change the RGBCurve node. Changing the roughness and the anisotropy values in the anisotropic shader can lead you to some glossy stars. Just play with it and change it as you need.
Maybe you can even throw away the bump node, i think its effect is quite superfluous.

BrushedMetal.blend (564 KB)

edited: for the diffraction grating effect that you can see in your picture, i still haven’t found a good solution… :frowning:

Hi all. I did this scratched metal sometime ago:

It is completely procedural and you can find the explanation here.

Is this something along the lines you want?

If so, I’ll clean up the project and upload. The highlight on the sphere should give a basic idea what it’s all about, although I mix in some bumpmapping and normal maps. The actual scratches happen to be those in the post above this, just rendered out at various densities and noised up coordinates (to make them non straight). It’s a very nice procedural pattern, that (as usual) tend to be too slow (for me anyways). Better and more complex pattern generators in Cycles would have been much welcome, since it would speed things up (construction time and render time wise).

Other than that, Blender/Cycles doesn’t really support the concept of microgrooves very well.
Here is a paper on microgrooves, scratches and so on. Maybe some day in blender? :slight_smile:

Again, I’m not sure if this is what you’re looking for, and my approach might not work well in all circumstances.

secrop-- You were the closenst. The idea works technicaly thoug it is not looking as good as I wanted. I mean the scratches are around the reflection point but they are not looking as in my picture.
I stil need to understand what exactlly you did there any way…
I don’t know what about you, but as I see until now - It seems like cycles can’t make this effect! do someone saw a CGI work with this material before? If so, what is the render engine?

As far as i know, there’s no algorithm for this kind of effect in any physically based render. :frowning:
Until now, i’ve only seen textured based materials for this specific reflection…
Maybe i can improve my first shader… I’ve some ideas that may turn it a bit faster, instead of using a huge amount of different Anisotropic shaders, for each direction…

Thank you. I will try to take a closer look photo of the bowl. maybe it will help.

A video might be better. I just have a hard time understanding how random scratches would form circular highlights. Not saying it isn’t so, just that I’ve never observed it myself. And your initial image does to me indicate productional grains/lay pattern (circular grooves) mixed in with wear and tear scratches. What material is it, what surface finish is it, and what surface roughness would you estimate (not sure it would help, but…)?

@Secrop: I like the material setup, but I’m not following what’s actually going on. I don’t think I have ever made use of vector cross products myself, other than happy little accidents. :slight_smile:

@CarlG, this is something very common, not only with metals, but also in other materials like plastic, glass, etc. Normally you’ll see it better when the light that’s shinning is very strong. The great problem for making this material is that it lies between a very localized anisotropy and a simple gloss with roughness. Statistically (because cycles loves statistics!) It looks as a gloss from the distance, and if you look very close you can define that each scratch can be represented with an anisotropic model. But in the middle you get the image ShacharHarshuv posted, and there’s no mathematical model to represent that. (that i know, at least).

About the shader i’ve posted,

The small nodegroup, is just a 2d vector creator, using a sine and a cosine of an angle to make the coordinates.

The cross product, between two vectors returns a vector perpendicular to both of the vectors. If one of the vectors is the surface normal, than the result is a tangent vector, but rotated around the normal, to be perpendicular to the other given vector.
This resulted tangent is what i use as the main ‘tangent’ for the anisotropic node, and as the coordinate system for the noise node which gives me those streched lines.

What i tried to simplify a bit, was to group every scratch with the same direction in just one anisotropic node, instead of calculating each scratch on its own. (that is what the noise texture is doing)
But this is still a lot for cycles, as we need different directions, and therefore, lots of anisotropic shaders. :frowning:

One idea that I came to mind, to simplify things even further, was to make each anisotropic shader to represent more than just one direction, so that we need a smaller number of them… But i haven’t spent any time testing this… It might work, but for now it’s just theory.

Found It! (go to 0:22)
someone has program it, for cycles! And it’s looking great. Now, how can I use it?

1 Like

I don’t know how they did it in the movie, but i remembered that Michel J. Anders (aka varkenvarken) wrote once this osl ‘Hagelslag’ script that could be used for scratches. I did a very tiny modification to the script so it also outputs the tangent vector corresponding to each scratch, that can be plug into the anisotropic shader. And the results are quite similar.

scratches.blend (431 KB)

1 Like

Hey, this may be useful for you, even if it’s not Blender:

Anyone saw this:Siggraph 2014: Rendering Glints on High-Resolution Normal-Mapped Specular Surfaces
Papers here:
Would it be viable with cycles?

^^ yep - I saw that video. Looks awesome.

Unless I’m mistaken, this is the effect that the original poster is looking for. Unfortunately I have not found the script that was used. The relevant part starts at around 24 seconds.

that’s the video OP posted in #18

As for the script, this is an example using varkenvarken script (post #19)

Sorry for reviving this thread, but I think I’m out of luck
None of the .blend files links shared here or out there work

So has anyone been lucky with this? That last @Secrop image looks great.
I’m interested to know how Specular reflection could be used as a factor in Cycles nodes.

Guys i think this Guy managed it ?

1 Like

mmmhhh… hagelslag…

gotta order a box or two

1 Like

Hagleslag, lekker!