mirror of
https://github.com/Ryujinx/Ryujinx.git
synced 2024-08-20 15:48:43 +02:00
* Add support for BC1/2/3 decompression (for 3D textures) * Optimize and clean up * Unsafe not needed here * Fix alpha value interpolation when a0 <= a1
66 lines
3.1 KiB
C#
66 lines
3.1 KiB
C#
namespace Ryujinx.Graphics.GAL
|
|
{
|
|
public struct Capabilities
|
|
{
|
|
public readonly bool HasFrontFacingBug;
|
|
public readonly bool HasVectorIndexingBug;
|
|
|
|
public readonly bool SupportsAstcCompression;
|
|
public readonly bool Supports3DTextureCompression;
|
|
public readonly bool SupportsBgraFormat;
|
|
public readonly bool SupportsR4G4Format;
|
|
public readonly bool SupportsFragmentShaderInterlock;
|
|
public readonly bool SupportsFragmentShaderOrderingIntel;
|
|
public readonly bool SupportsImageLoadFormatted;
|
|
public readonly bool SupportsMismatchingViewFormat;
|
|
public readonly bool SupportsNonConstantTextureOffset;
|
|
public readonly bool SupportsShaderBallot;
|
|
public readonly bool SupportsTextureShadowLod;
|
|
public readonly bool SupportsViewportSwizzle;
|
|
public readonly bool SupportsIndirectParameters;
|
|
|
|
public readonly int MaximumComputeSharedMemorySize;
|
|
public readonly float MaximumSupportedAnisotropy;
|
|
public readonly int StorageBufferOffsetAlignment;
|
|
|
|
public Capabilities(
|
|
bool hasFrontFacingBug,
|
|
bool hasVectorIndexingBug,
|
|
bool supportsAstcCompression,
|
|
bool supports3DTextureCompression,
|
|
bool supportsBgraFormat,
|
|
bool supportsR4G4Format,
|
|
bool supportsFragmentShaderInterlock,
|
|
bool supportsFragmentShaderOrderingIntel,
|
|
bool supportsImageLoadFormatted,
|
|
bool supportsMismatchingViewFormat,
|
|
bool supportsNonConstantTextureOffset,
|
|
bool supportsShaderBallot,
|
|
bool supportsTextureShadowLod,
|
|
bool supportsViewportSwizzle,
|
|
bool supportsIndirectParameters,
|
|
int maximumComputeSharedMemorySize,
|
|
float maximumSupportedAnisotropy,
|
|
int storageBufferOffsetAlignment)
|
|
{
|
|
HasFrontFacingBug = hasFrontFacingBug;
|
|
HasVectorIndexingBug = hasVectorIndexingBug;
|
|
SupportsAstcCompression = supportsAstcCompression;
|
|
Supports3DTextureCompression = supports3DTextureCompression;
|
|
SupportsBgraFormat = supportsBgraFormat;
|
|
SupportsR4G4Format = supportsR4G4Format;
|
|
SupportsFragmentShaderInterlock = supportsFragmentShaderInterlock;
|
|
SupportsFragmentShaderOrderingIntel = supportsFragmentShaderOrderingIntel;
|
|
SupportsImageLoadFormatted = supportsImageLoadFormatted;
|
|
SupportsMismatchingViewFormat = supportsMismatchingViewFormat;
|
|
SupportsNonConstantTextureOffset = supportsNonConstantTextureOffset;
|
|
SupportsShaderBallot = supportsShaderBallot;
|
|
SupportsTextureShadowLod = supportsTextureShadowLod;
|
|
SupportsViewportSwizzle = supportsViewportSwizzle;
|
|
SupportsIndirectParameters = supportsIndirectParameters;
|
|
MaximumComputeSharedMemorySize = maximumComputeSharedMemorySize;
|
|
MaximumSupportedAnisotropy = maximumSupportedAnisotropy;
|
|
StorageBufferOffsetAlignment = storageBufferOffsetAlignment;
|
|
}
|
|
}
|
|
} |