I want to be able to modify a texture's coordinates for when it gets sampled, but the only options they really offer are simple offsets/tiling. Is this possible, and if so how? This is very difficult to look up online as all the results are basic filtering options and yada yada.
Replies
Well i am only aware of the free bercon plugin , which allows for a displace value to deform per pixel.
It's not the most stable feature but overall can do some nice things.
In general it would be helpful to know what exactly it is, you want to sample ?
You can bring any texture into a gradient and have it's values change based on parameters like incident or distance..or do other fancy things depending how and what it is you have\need.
The effect I'm going for is what you can do at the shader level in any game engine in one line as well as in Substance Designer's pixel processor which functions just like shader code.
Essentially, the max equivalent of "tex2D(MyTexture, uvs)" where you can custom construct the float2 "uvs" to sample "MyTexture". So not an offset, but a mapping. A couple examples:
One of my substances:
This takes a regular ol' tiling texture and samples it with brand new UVs it constructs inside a pixel processor node.
And an example of doing it in code:
https://vvvv.org/documentation/tutorial-effects-texture-coordinates
Notice how they simply ripple the texture coordinates here, but in a more complex situation you may want to construct the texcoords from scratch. This is what I need.
https://github.com/johnburnett/WarpTexture
WarpTexture distorts one texture with another texture. Each RGB component of the warp texture will distort the corresponding UVW/XYZ value of the Target texture (ie. the warp red will push the Target texture along U/X).