2021-01-26 22:44:07 +01:00
|
|
|
using System;
|
|
|
|
|
2019-12-29 18:41:50 +01:00
|
|
|
namespace Ryujinx.Graphics.GAL
|
2019-10-13 08:02:07 +02:00
|
|
|
{
|
2021-01-26 22:44:07 +01:00
|
|
|
public struct VertexAttribDescriptor : IEquatable<VertexAttribDescriptor>
|
2019-10-13 08:02:07 +02:00
|
|
|
{
|
2020-01-06 02:04:37 +01:00
|
|
|
public int BufferIndex { get; }
|
|
|
|
public int Offset { get; }
|
2019-10-13 08:02:07 +02:00
|
|
|
|
2020-03-30 04:11:24 +02:00
|
|
|
public bool IsZero { get; }
|
|
|
|
|
2019-10-13 08:02:07 +02:00
|
|
|
public Format Format { get; }
|
|
|
|
|
2020-03-30 04:11:24 +02:00
|
|
|
public VertexAttribDescriptor(int bufferIndex, int offset, bool isZero, Format format)
|
2019-10-13 08:02:07 +02:00
|
|
|
{
|
|
|
|
BufferIndex = bufferIndex;
|
|
|
|
Offset = offset;
|
2020-03-30 04:11:24 +02:00
|
|
|
IsZero = isZero;
|
2019-10-13 08:02:07 +02:00
|
|
|
Format = format;
|
|
|
|
}
|
2021-01-26 22:44:07 +01:00
|
|
|
|
|
|
|
public override bool Equals(object obj)
|
|
|
|
{
|
|
|
|
return obj is VertexAttribDescriptor other && Equals(other);
|
|
|
|
}
|
|
|
|
|
|
|
|
public bool Equals(VertexAttribDescriptor other)
|
|
|
|
{
|
|
|
|
return BufferIndex == other.BufferIndex &&
|
|
|
|
Offset == other.Offset &&
|
|
|
|
IsZero == other.IsZero &&
|
|
|
|
Format == other.Format;
|
|
|
|
}
|
|
|
|
|
|
|
|
public override int GetHashCode()
|
|
|
|
{
|
|
|
|
return HashCode.Combine(BufferIndex, Offset, IsZero, Format);
|
|
|
|
}
|
2019-10-13 08:02:07 +02:00
|
|
|
}
|
|
|
|
}
|