You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Place windows on a grid fixed to the world rather than to the request #61
Window positions are worked out from the size of the region being generated and start at its top left corner. The same piece of world therefore gets different windows depending on which request touched it, since a request that starts somewhere else lays its windows down somewhere else.
That leaves nothing able to say whether two requests are talking about the same window. It also means the same area blends differently each time it is asked for, because a different set of windows covers it.
Description
Work out window positions from a grid fixed to the world, so a window sits in the same place no matter which request asked for it.
A window is identified by where its top left corner sits on that grid. Two requests that cover the same area must produce the same windows over it.
The spacing between windows stays what it is now. Only where the grid starts changes, from the corner of whatever was asked for to a fixed point in the world.
Testing:
Assert two requests covering the same area produce the same window positions over it
Assert a request that starts somewhere else still produces windows at the same world positions where the two overlap
Assert the spacing between neighbouring windows is unchanged
Assert a window covering a given part of the world has the same position whichever request produced it
Activity