using Engine.Graphics.Buffer.Vertex;
using OpenTK.Graphics.OpenGL;
using OpenTK.Mathematics;

namespace Engine.Graphics.Render.Quad;

public struct QuadInstanceVertex : IVertex
{
  [Vertex(VertexAttribType.Float, 4)] public Vector4 _color;
  [Vertex(VertexAttribType.Float)] public float _textureId;
  [Vertex(VertexAttribType.Float, 4, 4)] public Matrix4 _modelMatrix;

  public override int GetHashCode()
  {
    return HashCode.Combine(_color, _textureId, _modelMatrix);
  }
}