12 #include "ShaderTextureGL.h" 13 #include "cores/RetroPlayer/shaders/IShaderPreset.h" 14 #include "cores/RetroPlayer/shaders/ShaderTypes.h" 15 #include "games/GameServices.h" 16 #include "utils/Geometry.h" 23 #include "system_gl.h" 28 class CShaderPresetAddon;
49 unsigned videoWidth = 0,
50 unsigned videoHeight = 0);
55 bool ReadPresetFile(
const std::string& presetPath)
override;
57 void SetSpeed(
double speed)
override;
58 void SetVideoSize(
const unsigned videoWidth,
const unsigned videoHeight)
override;
59 bool SetShaderPreset(
const std::string& shaderPresetPath)
override;
60 const std::string& GetShaderPreset()
const override;
61 ShaderPassVec& GetPasses()
override;
65 bool CreateShaderTextures();
68 void UpdateViewPort();
69 void UpdateViewPort(
CRect viewPort);
71 void DisposeShaders();
74 bool HasPathFailed(
const std::string& path)
const;
81 std::string m_presetPath;
84 std::vector<std::unique_ptr<IShader>> m_pShaders;
87 std::vector<std::unique_ptr<CShaderTextureGL>> m_pShaderTextures;
93 bool m_bPresetNeedsUpdate =
true;
106 float m_frameCount = 0.0f;
116 std::set<std::string> m_failedPaths;
122 double m_speed = 0.0;
124 ShaderParameterMap GetShaderParameters(
const std::vector<ShaderParameter>& parameters,
125 const std::string& sourceStr)
const;
127 ShaderPassVec m_passes;
Definition: AudioDecoder.h:18
Definition: IShaderPreset.h:23
Definition: ShaderPresetGL.h:44
Definition: RenderContext.h:43
Definition: IShaderTexture.h:15
Definition: ShaderTypes.h:108