This is caused by large jumps in the UV coordinates which the GPU hardware automatically assumes means there needs to be a mip map transition. Due to the frac. The GPU uses the slope of the UVs in screen space to determine mips, so when it sees the UVs go from 0 to 1 suddenly it thinks that pixel has a steep slope (ie, the same as a wall almost perpendicular to you).
You can work around this using ComputeMipLevel but thats a pain since you need to enter the texture size.
A better way is to use the code “SampleGrad”. First make a Custom expression node.
Add an input called “Tex” and hook up your texture there as a texture object. Also add an input called “UV”.
Then add this line:
I will probably make this a material function at some point but I have been trying to get the rendering guys to make it a proper code node first. It’s like a game of chicken “Do it right or I will do it crappy at which point you will have to do it”.