GpuChannelPoolState.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. namespace Ryujinx.Graphics.Gpu.Shader
  2. {
  3. /// <summary>
  4. /// State used by the <see cref="GpuAccessor"/>.
  5. /// </summary>
  6. struct GpuChannelPoolState
  7. {
  8. /// <summary>
  9. /// GPU virtual address of the texture pool.
  10. /// </summary>
  11. public readonly ulong TexturePoolGpuVa;
  12. /// <summary>
  13. /// Maximum ID of the texture pool.
  14. /// </summary>
  15. public readonly int TexturePoolMaximumId;
  16. /// <summary>
  17. /// Constant buffer slot where the texture handles are located.
  18. /// </summary>
  19. public readonly int TextureBufferIndex;
  20. /// <summary>
  21. /// Creates a new GPU texture pool state.
  22. /// </summary>
  23. /// <param name="texturePoolGpuVa">GPU virtual address of the texture pool</param>
  24. /// <param name="texturePoolMaximumId">Maximum ID of the texture pool</param>
  25. /// <param name="textureBufferIndex">Constant buffer slot where the texture handles are located</param>
  26. public GpuChannelPoolState(ulong texturePoolGpuVa, int texturePoolMaximumId, int textureBufferIndex)
  27. {
  28. TexturePoolGpuVa = texturePoolGpuVa;
  29. TexturePoolMaximumId = texturePoolMaximumId;
  30. TextureBufferIndex = textureBufferIndex;
  31. }
  32. }
  33. }