mirror of
https://github.com/Ryujinx/Ryujinx.git
synced 2025-06-28 23:50:46 -07:00
Better IPA shader instruction implementation (#1082)
* Fix varying interpolation on fragment shader * Some nits * Alignment
This commit is contained in:
@ -12,8 +12,6 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
|
||||
|
||||
public VariableType VarType { get; set; }
|
||||
|
||||
public InterpolationQualifier Interpolation { get; }
|
||||
|
||||
public int Value { get; }
|
||||
|
||||
public int CbufSlot { get; }
|
||||
@ -29,8 +27,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
|
||||
|
||||
public AstOperand(Operand operand) : this()
|
||||
{
|
||||
Type = operand.Type;
|
||||
Interpolation = operand.Interpolation;
|
||||
Type = operand.Type;
|
||||
|
||||
if (Type == OperandType.ConstantBuffer)
|
||||
{
|
||||
|
@ -273,8 +273,6 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
|
||||
if (TryGetUserAttributeIndex(operand, out int attrIndex))
|
||||
{
|
||||
Info.IAttributes.Add(attrIndex);
|
||||
|
||||
Info.InterpolationQualifiers[attrIndex] = operand.Interpolation;
|
||||
}
|
||||
else if (operand.Type == OperandType.Attribute && operand.Value == AttributeConsts.InstanceId)
|
||||
{
|
||||
|
@ -14,8 +14,6 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
|
||||
public HashSet<int> IAttributes { get; }
|
||||
public HashSet<int> OAttributes { get; }
|
||||
|
||||
public InterpolationQualifier[] InterpolationQualifiers { get; }
|
||||
|
||||
public bool UsesInstanceId { get; set; }
|
||||
|
||||
public HelperFunctionsMask HelperFunctionsMask { get; set; }
|
||||
@ -35,8 +33,6 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
|
||||
IAttributes = new HashSet<int>();
|
||||
OAttributes = new HashSet<int>();
|
||||
|
||||
InterpolationQualifiers = new InterpolationQualifier[32];
|
||||
|
||||
Samplers = new HashSet<AstTextureOperation>();
|
||||
Images = new HashSet<AstTextureOperation>();
|
||||
}
|
||||
|
Reference in New Issue
Block a user