And a question more about Outerra, do you send different noise bands separately and add them together in the GPU depending on LOD level....or are they summed in the CPU and then sent to the GPU.
Noise bands are both generated and added together on the GPU - it's quite parallelizable process so doing it on GPU is advantageous.
What is the simplest way to generate the bands on the GPU?
Terrain of given level of detail can be produced by adding a common scaled non-coherent noise to an upsampled (coarser) level of detail.
I think understand what you say.
However what benefit does using wavelet noise give?..does it make it non-coherent..
the paper says:
"A band-dependent translation is usually added to x*2^b to de-correlate the
noise bands, but we can safely ignore this in our analysis."
Is this related to non-coherence?
They also say this:
"thus, if we build our noise bands in the wavelet space W0 , then they can be
scaled to any resolution j and be guaranteed to have no effect on
images at any resolution less than j."
I think this is important to reduce anti-aliasing far away, and also important
for adding levels together.. but what does no effect mean ?
You can use various basis functions for the upsampling. This could be implemented in a similar way as with perlin (i.e. a deterministic function returning value from coordinate parameters), or using stored parent data.
That is good to know since the Pixar paper "software code" makes it in a way that look inefficient compared to a Perlin implementation.
They say though that non-refinable functions like gaussian functions can not be used.