Need help with parametric anisotropic materials


watch_texture_rings_1_v01.blend (143.3 KB)

Explanation: Basically, you have to compute the center of a particualar ring with radius r2 for every point in xy-space which belongs to the larger ring with inner radius r1 and outer radius r1+2*r2.

In polar coordinates, every point in xy space can be expressed by an angle alpha and a radius r. We need to compute the angle beta = f(alpha,r) which gives us the polar coordinates of the ring with radius r2 we are searching for.

The formula can be derived by trigonometry:

As we we want some discretization in the rings, we can add a snap node after this calculation.

from beta we can then compute the center of the ring in xy-coordinates and use the distance to the point on our object to compute any pattern we want.

Edit: seems that I made some mistakes with that snap node, floor seems to work better for some reason. Here’s a version with anisotropy enabled (computing the tangent from the normal and the vector pointing from the surface point to the small ring center)

watch_texture_rings_1_v02.blend (147.8 KB)

1 Like