ShaderProgram.cs 730 B

123456789101112131415161718192021222324252627282930313233
  1. using System;
  2. namespace Ryujinx.Graphics.Shader
  3. {
  4. public class ShaderProgram
  5. {
  6. public ShaderProgramInfo Info { get; }
  7. public ShaderStage Stage { get; }
  8. public string Code { get; private set; }
  9. public int Size { get; }
  10. internal ShaderProgram(ShaderProgramInfo info, ShaderStage stage, string code, int size)
  11. {
  12. Info = info;
  13. Stage = stage;
  14. Code = code;
  15. Size = size;
  16. }
  17. public void Prepend(string line)
  18. {
  19. Code = line + Environment.NewLine + Code;
  20. }
  21. public void Replace(string name, string value)
  22. {
  23. Code = Code.Replace(name, value);
  24. }
  25. }
  26. }