|
|
@@ -20,9 +20,12 @@ namespace Ryujinx.Graphics.Gpu.Engine
|
|
|
|
|
|
ulong shaderGpuVa = shaderBaseAddress.Pack() + (uint)dispatchParams.ShaderOffset;
|
|
|
|
|
|
+ // Note: A size of 0 is also invalid, the size must be at least 1.
|
|
|
+ int sharedMemorySize = Math.Clamp(dispatchParams.SharedMemorySize & 0xffff, 1, _context.Capabilities.MaximumComputeSharedMemorySize);
|
|
|
+
|
|
|
ComputeShader cs = _shaderCache.GetComputeShader(
|
|
|
shaderGpuVa,
|
|
|
- dispatchParams.SharedMemorySize & 0xffff,
|
|
|
+ sharedMemorySize,
|
|
|
dispatchParams.UnpackBlockSizeX(),
|
|
|
dispatchParams.UnpackBlockSizeY(),
|
|
|
dispatchParams.UnpackBlockSizeZ());
|