mirror of
https://github.com/Ryujinx/Ryujinx.git
synced 2025-02-21 04:15:33 +00:00
* Move some properties out of ShaderConfig * Stop using ShaderConfig on backends * Replace ShaderConfig usages on Translator and passes * Move remaining properties out of ShaderConfig and delete ShaderConfig * Remove ResourceManager property from TranslatorContext * Move Rewriter passes to separate transform pass files * Fix TransformPasses.RunPass on cases where a node is removed * Move remaining ClipDistancePrimitivesWritten and UsedFeatures updates to decode stage * Reduce excessive parameter passing a bit by using structs more * Remove binding parameter from ShaderProperties methods since it is redundant * Replace decoder instruction checks with switch statement * Put GLSL on the same plan as SPIR-V for input/output declaration * Stop mutating TranslatorContext state when Translate is called * Pass most of the graphics state using a struct instead of individual query methods * Auto-format * Auto-format * Add backend logging interface * Auto-format * Remove unnecessary use of interpolated strings * Remove more modifications of AttributeUsage after decode * PR feedback * gl_Layer is not supported on compute
34 lines
1.5 KiB
C#
34 lines
1.5 KiB
C#
namespace Ryujinx.Graphics.Shader.Translation
|
|
{
|
|
class HostCapabilities
|
|
{
|
|
public readonly bool ReducedPrecision;
|
|
public readonly bool SupportsFragmentShaderInterlock;
|
|
public readonly bool SupportsFragmentShaderOrderingIntel;
|
|
public readonly bool SupportsGeometryShaderPassthrough;
|
|
public readonly bool SupportsShaderBallot;
|
|
public readonly bool SupportsShaderBarrierDivergence;
|
|
public readonly bool SupportsTextureShadowLod;
|
|
public readonly bool SupportsViewportMask;
|
|
|
|
public HostCapabilities(
|
|
bool reducedPrecision,
|
|
bool supportsFragmentShaderInterlock,
|
|
bool supportsFragmentShaderOrderingIntel,
|
|
bool supportsGeometryShaderPassthrough,
|
|
bool supportsShaderBallot,
|
|
bool supportsShaderBarrierDivergence,
|
|
bool supportsTextureShadowLod,
|
|
bool supportsViewportMask)
|
|
{
|
|
ReducedPrecision = reducedPrecision;
|
|
SupportsFragmentShaderInterlock = supportsFragmentShaderInterlock;
|
|
SupportsFragmentShaderOrderingIntel = supportsFragmentShaderOrderingIntel;
|
|
SupportsGeometryShaderPassthrough = supportsGeometryShaderPassthrough;
|
|
SupportsShaderBallot = supportsShaderBallot;
|
|
SupportsShaderBarrierDivergence = supportsShaderBarrierDivergence;
|
|
SupportsTextureShadowLod = supportsTextureShadowLod;
|
|
SupportsViewportMask = supportsViewportMask;
|
|
}
|
|
}
|
|
}
|