11 #include "ShaderTypes.h" 12 #include "utils/Geometry.h" 39 virtual bool Create(
const std::string& shaderSource,
40 const std::string& shaderPath,
41 ShaderParameterMap shaderParameters,
45 unsigned frameCountMod = 0) = 0;
virtual void UpdateMVP()=0
Updates the model view projection matrix. Should usually only be called when the viewport/window size...
virtual void SetSizes(const float2 &prevSize, const float2 &nextSize)=0
Sets the input and output sizes in pixels.
Definition: AudioDecoder.h:18
virtual void Render(IShaderTexture *source, IShaderTexture *target)=0
Renders the video shader to the target texture.
virtual bool CreateInputBuffer()=0
Creates the buffer that will be used to send "input" (as per the spec) data to the shader...
Definition: IShaderTexture.h:15
Definition: ShaderTypes.h:108
Definition: IShaderSampler.h:15
virtual bool CreateVertexBuffer(unsigned vertCount, unsigned vertSize)=0
Construct the vertex buffer that will be used to render the shader.
virtual void PrepareParameters(CPoint dest[4], bool isLastPass, uint64_t frameCount)=0
Called before rendering. Updates any internal state needed to ensure that correct data is passed to t...
virtual bool Create(const std::string &shaderSource, const std::string &shaderPath, ShaderParameterMap shaderParameters, IShaderSampler *sampler, ShaderLutVec luts, float2 viewPortSize, unsigned frameCountMod=0)=0
Construct the vidoe shader instance.