Capabilities.cs 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. namespace Ryujinx.Graphics.GAL
  2. {
  3. public struct Capabilities
  4. {
  5. public bool HasFrontFacingBug { get; }
  6. public bool HasVectorIndexingBug { get; }
  7. public bool SupportsAstcCompression { get; }
  8. public bool SupportsImageLoadFormatted { get; }
  9. public bool SupportsMismatchingViewFormat { get; }
  10. public bool SupportsNonConstantTextureOffset { get; }
  11. public bool SupportsTextureShadowLod { get; }
  12. public bool SupportsViewportSwizzle { get; }
  13. public int MaximumComputeSharedMemorySize { get; }
  14. public float MaximumSupportedAnisotropy { get; }
  15. public int StorageBufferOffsetAlignment { get; }
  16. public Capabilities(
  17. bool hasFrontFacingBug,
  18. bool hasVectorIndexingBug,
  19. bool supportsAstcCompression,
  20. bool supportsImageLoadFormatted,
  21. bool supportsMismatchingViewFormat,
  22. bool supportsNonConstantTextureOffset,
  23. bool supportsTextureShadowLod,
  24. bool supportsViewportSwizzle,
  25. int maximumComputeSharedMemorySize,
  26. float maximumSupportedAnisotropy,
  27. int storageBufferOffsetAlignment)
  28. {
  29. HasFrontFacingBug = hasFrontFacingBug;
  30. HasVectorIndexingBug = hasVectorIndexingBug;
  31. SupportsAstcCompression = supportsAstcCompression;
  32. SupportsImageLoadFormatted = supportsImageLoadFormatted;
  33. SupportsMismatchingViewFormat = supportsMismatchingViewFormat;
  34. SupportsNonConstantTextureOffset = supportsNonConstantTextureOffset;
  35. SupportsTextureShadowLod = supportsTextureShadowLod;
  36. SupportsViewportSwizzle = supportsViewportSwizzle;
  37. MaximumComputeSharedMemorySize = maximumComputeSharedMemorySize;
  38. MaximumSupportedAnisotropy = maximumSupportedAnisotropy;
  39. StorageBufferOffsetAlignment = storageBufferOffsetAlignment;
  40. }
  41. }
  42. }