Support non-constant texture offsets on non-NVIDIA gpus
This commit is contained in:
parent
3323a3a042
commit
f2c85c5d58
11 changed files with 319 additions and 33 deletions
|
@ -3,22 +3,25 @@ namespace Ryujinx.Graphics.Shader
|
|||
public struct ShaderCapabilities
|
||||
{
|
||||
// Initialize with default values for Maxwell.
|
||||
private static readonly ShaderCapabilities _default = new ShaderCapabilities(32768, 49152, 16);
|
||||
private static readonly ShaderCapabilities _default = new ShaderCapabilities(0x8000, 0xc000, 16, true);
|
||||
|
||||
public static ShaderCapabilities Default => _default;
|
||||
|
||||
public int MaximumViewportDimensions { get; }
|
||||
public int MaximumComputeSharedMemorySize { get; }
|
||||
public int StorageBufferOffsetAlignment { get; }
|
||||
public int MaximumViewportDimensions { get; }
|
||||
public int MaximumComputeSharedMemorySize { get; }
|
||||
public int StorageBufferOffsetAlignment { get; }
|
||||
public bool SupportsNonConstantTextureOffset { get; }
|
||||
|
||||
public ShaderCapabilities(
|
||||
int maximumViewportDimensions,
|
||||
int maximumComputeSharedMemorySize,
|
||||
int storageBufferOffsetAlignment)
|
||||
int maximumViewportDimensions,
|
||||
int maximumComputeSharedMemorySize,
|
||||
int storageBufferOffsetAlignment,
|
||||
bool supportsNonConstantTextureOffset)
|
||||
{
|
||||
MaximumViewportDimensions = maximumViewportDimensions;
|
||||
MaximumComputeSharedMemorySize = maximumComputeSharedMemorySize;
|
||||
StorageBufferOffsetAlignment = storageBufferOffsetAlignment;
|
||||
MaximumViewportDimensions = maximumViewportDimensions;
|
||||
MaximumComputeSharedMemorySize = maximumComputeSharedMemorySize;
|
||||
StorageBufferOffsetAlignment = storageBufferOffsetAlignment;
|
||||
SupportsNonConstantTextureOffset = supportsNonConstantTextureOffset;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue