forked from Mirror/Ryujinx
79092310fa
* Compare aligned size for largest mip level when considering sampler resize When selecting a texture that's a view for a sampler resize, we should take care that resizing it doesn't change the aligned size of any larger mip levels. This PR covers two cases: - When creating a view of the texture, we check that the aligned size of the view shifted up to level 0 still matches the aligned size of the container. If it does not, a copy dependency is created rather than resizing. - When searching for a texture for sampler, textures that do _not_ match our aligned size when both are shifted up by its base level are not considered an exact match, as resizing the found texture will cause the mip 0 aligned size to change. It will create a copy dependency view instead. Fixes graphical errors and crashes (on flush) in various Unity games that use render-to-texture. * Move shared code to its own method. |
||
---|---|---|
.. | ||
Engine | ||
Image | ||
Memory | ||
Shader | ||
State | ||
Synchronization | ||
ClassId.cs | ||
Constants.cs | ||
GpuContext.cs | ||
GraphicsConfig.cs | ||
MethodParams.cs | ||
Ryujinx.Graphics.Gpu.csproj | ||
ShadowRamControl.cs | ||
Window.cs |