Background
The windowed blending sampler is what lets us generate a region of any size out of a model that only works on one fixed size patch. It lays overlapping windows over the region, asks #23 to clean each one, and adds the results into the region grids from #31 so that the overlaps blend together instead of leaving visible lines. This module gets called by generation orchestration whenever it needs a region.
Description
Given a seed and a region size, produce a finished full resolution grid with no visible seams where the patches meet.
- Work out where the windows go so every cell is covered and neighbours overlap
- Create the starting noise for the region from a seed
- Build a weight grid that fades out toward the edges of a patch
- Clean each window and add the results into the region grids with those weights
Everything this module needs from elsewhere gets handed in: a function that cleans a patch, and the region grids to add into. It builds neither of them and it never sees the tile cache.
Background
The windowed blending sampler is what lets us generate a region of any size out of a model that only works on one fixed size patch. It lays overlapping windows over the region, asks #23 to clean each one, and adds the results into the region grids from #31 so that the overlaps blend together instead of leaving visible lines. This module gets called by generation orchestration whenever it needs a region.
Description
Given a seed and a region size, produce a finished full resolution grid with no visible seams where the patches meet.
Everything this module needs from elsewhere gets handed in: a function that cleans a patch, and the region grids to add into. It builds neither of them and it never sees the tile cache.