27 virtual const string getId() = 0;
Matrix4x4 class representing matrix4x4 mathematical structure and operations for 3d space.
Shadow mapping shader interface to render shadow map.
virtual void setDepthBiasMVPMatrix(int contextIdx, const Matrix4x4 &depthBiasMVPMatrix)=0
Set up program depth bias mvp matrix.
virtual void loadTextures(const string &pathName)=0
Load textures.
virtual void updateTextureMatrix(Renderer *renderer, int contextIdx)=0
Update texture matrix.
virtual void unUseProgram(int contextIdx)=0
Un use shadow map render shader program.
virtual bool isInitialized()=0
virtual void updateShaderParameters(Renderer *renderer, int contextIdx)=0
Update shader parameters.
virtual void updateLight(Renderer *renderer, int contextIdx, int32_t lightId)=0
Update light.
virtual void updateMatrices(int contextIdx)=0
Update matrices.
virtual void bindTexture(Renderer *renderer, int contextIdx, int32_t textureId)=0
Bind texture.
virtual void initialize()=0
Init shadow mapping.
virtual const string getId()=0
virtual void useProgram(Engine *engine, int contextIdx)=0
Use shadow map render shader program.
virtual void updateMaterial(Renderer *renderer, int contextIdx)=0
Update material.
virtual void unloadTextures()=0
Unload textures.
virtual ~ShadowMapRenderShaderImplementation()
Destructor.
virtual void setRenderLightId(int32_t lightId)=0
Set light id.