mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-11-02 12:56:05 +00:00
A draw whose sample locations vary between the pixels of the guest's 2x2 pattern threw "sample locations varying between pixels require a 2x2 sample location grid for the draw's sample count" on a device whose maxSampleLocationGridSize for that sample count is not a multiple of 2x2. An RTX 3070 Laptop GPU reports 1x1 for every count, so Resident Evil Village's 2x checkerboard pattern stopped there before its title. The pipeline now decides the grid when it is created: such a pattern is drawn through a 1x1 grid with pixel (0,0)'s locations, the first registers of the pattern and the pixel the guest's grid is anchored at, and the first such pipeline of each sample count logs it. The render pass begin takes the pipeline's grid, so a sample-location- compatible depth image is begun with the locations it is drawn with. Devices with the grid keep it, and uniform patterns are unchanged.