FramebufferShaderGen.h 1.1 KB

123456789101112131415161718192021222324252627282930
  1. // Copyright 2019 Dolphin Emulator Project
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #pragma once
  4. #include <string>
  5. #include "Common/CommonTypes.h"
  6. enum class EFBReinterpretType;
  7. enum class TextureFormat;
  8. namespace FramebufferShaderGen
  9. {
  10. std::string GenerateScreenQuadVertexShader();
  11. std::string GeneratePassthroughGeometryShader(u32 num_tex, u32 num_colors);
  12. std::string GenerateTextureCopyVertexShader();
  13. std::string GenerateTextureCopyPixelShader();
  14. std::string GenerateResolveColorPixelShader(u32 samples);
  15. std::string GenerateResolveDepthPixelShader(u32 samples);
  16. std::string GenerateClearVertexShader();
  17. std::string GenerateEFBPokeVertexShader();
  18. std::string GenerateColorPixelShader();
  19. std::string GenerateFormatConversionShader(EFBReinterpretType convtype, u32 samples);
  20. std::string GenerateTextureReinterpretShader(TextureFormat from_format, TextureFormat to_format);
  21. std::string GenerateEFBRestorePixelShader();
  22. std::string GenerateImGuiVertexShader();
  23. std::string GenerateImGuiPixelShader(bool linear_space_output = false);
  24. } // namespace FramebufferShaderGen