Factor Mask on Cylinder/Sphere/Spherical coordinate Normals?

Hey all!

Trying to do one of these looping animations where the landscape scrolls underneath the car.

I made the black/white mask to mix between “Grass” and “Rock/Mud” so the tops of the hills on the side have grass/are green – you hopefully get the idea:

Now the problem is, the white spots obviously move around with the object because they are taken from the Z-Axis of the normals. Now my question would be, can i somehow warp this entire coordinate system or do something so that all the hills have white spots on the desired “up” side, so moving away from the center like on a planet instead like in a rectangular coordinate space? I hope I’m making sense.

If I understand you right, you want something where you can mask the hills based on their slope compared to the “up” direction in relation to your cylinder’s axis?

I think something like this might be what you want:

In my case my cylinder’s axis is parallel to the objects x-axis, which is why the x-component in the selected multiply node is 0. If your cylinder is parallel to it’s local y-axis, the y-component would have to be 0.

1 Like

Exactly! Thank you for your time.

Learned what the “Normalize” Vector Math mode is for.

Did you learn shading by yourself or at work? Is there an in-depth course you can recommend? Are you wizards all that good at maths or do you just know a lot of ways to do a lot of things from experience?

I learned it as a hobby over the last couple years.

A certain affinity for math is certainly helpful, but not super necessary. (As long as your not afraid of math :slight_smile: )

For shading or geometry nodes it’s good to develop an understanding of what the operations do in a geometric sense.
Whether you do that by reasoning through the calculations behind the operation or just by playing around doesn’t matter too much. For me it was always a bit of both and I always found it helpful to have the operations visualized so I could see how the input is transformed.

For the normal math nodes you can use graphs that you can even display in the shader nodes themselves like shown in this tutorial).
And for Vector math there are a lot of good videos on youtube explaining and visualizing the concepts. I personally enjoyed:

It’s also normal to not get everything when going through this stuff the first time. I found that often it’s just good to have heard of something at some point, even if I didn’t understand it. So once I found myself in a situation where it was applicable I could at least look it up and have a starting point where to look for a solution.
Usually once I used something in a few ways or I came across a different explanation things clicked and kinda fell into place.

In the end it’s just practice. I a lot by looking through this support forum for posts just like yours and trying to figure them out myself or learn from the solution, if I couldn’t.
Over time that gives you a toolbox of common things that you “just know” how to solve and that help you approach bigger problems by breaking them down bit by bit.

1 Like