Shadergraph, How To Get Offset Float From Position (Absolute World)?

How can I get just a standard float from a position node to use as an offset for a texture?

As soon as I plug it in or split it and plug it in, it changes my 2d texture to a sphere in my shadergraph and the texture isn’t just being offset in game… it looks like the scale is being affected for some reason. I thought absolute world would just give me a single location so I could extract a float to create some randomness on different objects with the same material.

All help is appreciated.

EDIT

Here is the shadergraph. When I try to get a float from the position node it changes the dynamic of everything and no longer acts like it is just adding a value to the Y offset. Everything becomes spherical and you can see on the far right how parts of this 2D image (now a sphere) are thin and parts are wide… as if it’s changing the scaling depending on the part of the sphere… in game, the texture widens or shrinks depending on location. I just want it to have a random Y offset depending on it’s 3d location. Sorry I can’t show screenshots in game. I’m on a NDA for a commercial game.



You are using the wrong node here. Vertex position-based UV offset results in ugly UV stretching. It’s unintuitive but becomes clear if you run the numbers.

  1. Change the node type from Position to Object
  2. Take Object/Position value as input for your graph.

Position Node | Shader Graph | 17.0.1

Object Node | Shader Graph | 17.0.1

People like you on this forum always seem to come through for me.
So very much appreciated. Thank you. Have a great one!