# Z component of position not changing adequately in Geometry Nodes

I have been trying to solve a problem all week, and even started my Blender scene from scratch a couple of times, but I can’t get Geometry Nodes to work properly. I need help. The following explanation may be a bit long and detailed, but I’m trying to make sure I’m not doing anything wrong, and the details may help figure where I’m bungling things up. (Also, forgive me if it gets confusing, at any point: English is not my primary language).

I saw this, done by a Twitter user named @Concinnus, (using other tools either than Blender) and I thought I’d implement something similar using Geometry Nodes:

The variation I’m going for uses the sine function of the X position to determine the Z position (I’ll have peaks AND valleys, but that’s OK: I believe it will look good). The sine function for each row is dislocated a bit, but it’s the same function.

I have a grid 2m x 4m, with 100 vertices in the X axis and 200 in the Y axis:

Here’s my node tree, with the spreadsheet and the erroneous result (in orthogonal view):

1. I start by separating the position in PosX, PosY and PosZ.
2. Then I map PosX from 0 to 2π (it’s a blessing just being able to type tau in the float field and see Blender gets it right). I store it in PosXTau.
3. I use the Frame ID to animate the curve, so I map it also from 0 to 2π and subtract it from PosXTau.

Here’s where things start to get weird:

1. I use PosY to shift the curve for each row. For such, first I map PosY to 0 to 1.
2. Then I create DeltaY, which is 1/200 of 2π, 200 being the number of rows in the Y direction.
3. I then proceed to add DeltaY to PosXTau and leave the result in PosXTau.
4. I calculate the sine of PosXTau and store the result in PosZ
5. I recombine the position vector with PosX, PosY and PosZ

The result should be my sine function sinuously curving in the y direction as well as in the X direction, but that doesn’t happen, as can be seen in the 3D View Port. It curves correctly along the X axis, but is “flat” along the Y axis.

What gets me is that I can see with my own eyes that both PosZ and the z component of the position vector are, indeed varying along the Y axis, as can be seen in the spreadsheet but, alas, it remains flat in the 3D view.

Someone pointed out to me that although PosZ is changing, it is a small change, and so I should multiply it by a large number and see if it registered visibly in the object. I did just that, bu to no avail. In the image below I multiplied PosZ by 100, but the sides continue to be "flat", although the PosZ Variation should reach 3.14m (for scale, from the leftmost portion to the rightmost portion of the image, there is a distance of 4m):

Can anybody please explain what I’m doing wrong and help me get to the expected result?

• What happens if you input just the Y coordinates, made to alter something simple, like +1 on the Z - Does the "y mapping" work correctly on its own (without the X manipulation)? Aug 7, 2021 at 0:53
• would you provide your blend file to make it easier for us to help? Aug 7, 2021 at 5:21
• do you want that? [1]: i.stack.imgur.com/P3ZyB.gif Aug 7, 2021 at 5:48
• @ChristopherBennett I made a simple, small scene where I add the value of Y to the SineX and it works. It's essentially what I'm doing in my actual file, so I still don't know why it doesn't work there. Here's an image of the result, the spreadsheet and the nodes: imgur.com/a/ZSPwQcd Aug 7, 2021 at 10:49
• @Chris My pleasure. Here's the file: pasteall.org/blend/7fe81820d3cc4b15ad56c3323af30ee3 Aug 7, 2021 at 10:50