Optimized Noise Generation

Currently designing a minimalistic perlin noise generator that moves horizontally over time, giving off a similar feeling to ocean waves.


My concern is that the texture is generated from scratch per frame, which remains somewhat computationally expensive. One solution is to preserve any visible pixels between calls and only regenerate the row of pixels the movement reveals, shifting the other pixels across.


However, I’m wondering if there may be other established solutions to this problem?

I’d say the established way of using gradient noise algorithms in an interactive way is to run them on the GPU instead of the CPU (i.e. in a shader rather than in a C# script). You can find the gradient noise implementation used in ShaderGraph here.