forked from Mirror/Ryujinx
8b44eb1c98
* Use DeviceState for compute and i2m * Migrate 2D class, more comments * Migrate DMA copy engine * Remove now unused code * Replace GpuState by GpuAccessorState on GpuAcessor, since compute no longer has a GpuState * More comments * Add logging (disabled) * Add back i2m on 3D engine
43 lines
No EOL
1.5 KiB
C#
43 lines
No EOL
1.5 KiB
C#
namespace Ryujinx.Graphics.Gpu.Shader
|
|
{
|
|
/// <summary>
|
|
/// State used by the <see cref="GpuAccessor"/>.
|
|
/// </summary>
|
|
struct GpuAccessorState
|
|
{
|
|
/// <summary>
|
|
/// GPU virtual address of the texture pool.
|
|
/// </summary>
|
|
public ulong TexturePoolGpuVa { get; }
|
|
|
|
/// <summary>
|
|
/// Maximum ID of the texture pool.
|
|
/// </summary>
|
|
public int TexturePoolMaximumId { get; }
|
|
|
|
/// <summary>
|
|
/// Constant buffer slot where the texture handles are located.
|
|
/// </summary>
|
|
public int TextureBufferIndex { get; }
|
|
|
|
/// <summary>
|
|
/// Early Z force enable.
|
|
/// </summary>
|
|
public bool EarlyZForce { get; }
|
|
|
|
/// <summary>
|
|
/// Creates a new instance of the GPU accessor state.
|
|
/// </summary>
|
|
/// <param name="texturePoolGpuVa">GPU virtual address of the texture pool</param>
|
|
/// <param name="texturePoolMaximumId">Maximum ID of the texture pool</param>
|
|
/// <param name="textureBufferIndex">Constant buffer slot where the texture handles are located</param>
|
|
/// <param name="earlyZForce">Early Z force enable</param>
|
|
public GpuAccessorState(ulong texturePoolGpuVa, int texturePoolMaximumId, int textureBufferIndex, bool earlyZForce)
|
|
{
|
|
TexturePoolGpuVa = texturePoolGpuVa;
|
|
TexturePoolMaximumId = texturePoolMaximumId;
|
|
TextureBufferIndex = textureBufferIndex;
|
|
EarlyZForce = earlyZForce;
|
|
}
|
|
}
|
|
} |