GuestShaderCacheTransformFeedbackHeader.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. using System.Runtime.InteropServices;
  2. namespace Ryujinx.Graphics.Gpu.Shader.Cache.Definition
  3. {
  4. /// <summary>
  5. /// Header for transform feedback.
  6. /// </summary>
  7. [StructLayout(LayoutKind.Sequential, Pack = 1, Size = 0x10)]
  8. struct GuestShaderCacheTransformFeedbackHeader
  9. {
  10. /// <summary>
  11. /// The buffer index of the transform feedback.
  12. /// </summary>
  13. public int BufferIndex;
  14. /// <summary>
  15. /// The stride of the transform feedback.
  16. /// </summary>
  17. public int Stride;
  18. /// <summary>
  19. /// The length of the varying location buffer of the transform feedback.
  20. /// </summary>
  21. public int VaryingLocationsLength;
  22. /// <summary>
  23. /// Reserved/unused.
  24. /// </summary>
  25. public int Reserved1;
  26. public GuestShaderCacheTransformFeedbackHeader(int bufferIndex, int stride, int varyingLocationsLength) : this()
  27. {
  28. BufferIndex = bufferIndex;
  29. Stride = stride;
  30. VaryingLocationsLength = varyingLocationsLength;
  31. }
  32. }
  33. }