Implement support for multi-range buffers using Vulkan sparse mappings (#5427)
* Pass MultiRange to BufferManager * Implement support for multi-range buffers using Vulkan sparse mappings * Use multi-range for remaining buffers, delete old methods * Assume that more buffers are contiguous * Dispose multi-range buffers after they are removed from the list * Properly init BufferBounds for constant and storage buffers * Do not try reading zero bytes data from an unmapped address on the shader cache + PR feedback * Fix misaligned sparse buffer offsets * Null check can be simplified * PR feedback
This commit is contained in:
@ -23,6 +23,7 @@ namespace Ryujinx.Graphics.GAL
|
||||
public readonly bool SupportsR4G4B4A4Format;
|
||||
public readonly bool SupportsScaledVertexFormats;
|
||||
public readonly bool SupportsSnormBufferTextureFormat;
|
||||
public readonly bool SupportsSparseBuffer;
|
||||
public readonly bool Supports5BitComponentFormat;
|
||||
public readonly bool SupportsBlendEquationAdvanced;
|
||||
public readonly bool SupportsFragmentShaderInterlock;
|
||||
@ -79,6 +80,7 @@ namespace Ryujinx.Graphics.GAL
|
||||
bool supportsScaledVertexFormats,
|
||||
bool supportsSnormBufferTextureFormat,
|
||||
bool supports5BitComponentFormat,
|
||||
bool supportsSparseBuffer,
|
||||
bool supportsBlendEquationAdvanced,
|
||||
bool supportsFragmentShaderInterlock,
|
||||
bool supportsFragmentShaderOrderingIntel,
|
||||
@ -130,6 +132,7 @@ namespace Ryujinx.Graphics.GAL
|
||||
SupportsScaledVertexFormats = supportsScaledVertexFormats;
|
||||
SupportsSnormBufferTextureFormat = supportsSnormBufferTextureFormat;
|
||||
Supports5BitComponentFormat = supports5BitComponentFormat;
|
||||
SupportsSparseBuffer = supportsSparseBuffer;
|
||||
SupportsBlendEquationAdvanced = supportsBlendEquationAdvanced;
|
||||
SupportsFragmentShaderInterlock = supportsFragmentShaderInterlock;
|
||||
SupportsFragmentShaderOrderingIntel = supportsFragmentShaderOrderingIntel;
|
||||
|
Reference in New Issue
Block a user