aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Gpu/Shader/CachedShaderProgram.cs
diff options
context:
space:
mode:
authorTSR Berry <20988865+TSRBerry@users.noreply.github.com>2023-04-08 01:22:00 +0200
committerMary <thog@protonmail.com>2023-04-27 23:51:14 +0200
commitcee712105850ac3385cd0091a923438167433f9f (patch)
tree4a5274b21d8b7f938c0d0ce18736d3f2993b11b1 /Ryujinx.Graphics.Gpu/Shader/CachedShaderProgram.cs
parentcd124bda587ef09668a971fa1cac1c3f0cfc9f21 (diff)
Move solution and projects to src
Diffstat (limited to 'Ryujinx.Graphics.Gpu/Shader/CachedShaderProgram.cs')
-rw-r--r--Ryujinx.Graphics.Gpu/Shader/CachedShaderProgram.cs56
1 files changed, 0 insertions, 56 deletions
diff --git a/Ryujinx.Graphics.Gpu/Shader/CachedShaderProgram.cs b/Ryujinx.Graphics.Gpu/Shader/CachedShaderProgram.cs
deleted file mode 100644
index ff9c39a1..00000000
--- a/Ryujinx.Graphics.Gpu/Shader/CachedShaderProgram.cs
+++ /dev/null
@@ -1,56 +0,0 @@
-using Ryujinx.Graphics.GAL;
-using System;
-
-namespace Ryujinx.Graphics.Gpu.Shader
-{
- /// <summary>
- /// Represents a program composed of one or more shader stages (for graphics shaders),
- /// or a single shader (for compute shaders).
- /// </summary>
- class CachedShaderProgram : IDisposable
- {
- /// <summary>
- /// Host shader program object.
- /// </summary>
- public IProgram HostProgram { get; }
-
- /// <summary>
- /// GPU state used to create this version of the shader.
- /// </summary>
- public ShaderSpecializationState SpecializationState { get; }
-
- /// <summary>
- /// Compiled shader for each shader stage.
- /// </summary>
- public CachedShaderStage[] Shaders { get; }
-
- /// <summary>
- /// Cached shader bindings, ready for placing into the bindings manager.
- /// </summary>
- public CachedShaderBindings Bindings { get; }
-
- /// <summary>
- /// Creates a new instance of the shader bundle.
- /// </summary>
- /// <param name="hostProgram">Host program with all the shader stages</param>
- /// <param name="specializationState">GPU state used to create this version of the shader</param>
- /// <param name="shaders">Shaders</param>
- public CachedShaderProgram(IProgram hostProgram, ShaderSpecializationState specializationState, params CachedShaderStage[] shaders)
- {
- HostProgram = hostProgram;
- SpecializationState = specializationState;
- Shaders = shaders;
-
- SpecializationState.Prepare(shaders);
- Bindings = new CachedShaderBindings(shaders.Length == 1, shaders);
- }
-
- /// <summary>
- /// Dispose of the host shader resources.
- /// </summary>
- public void Dispose()
- {
- HostProgram.Dispose();
- }
- }
-}