1
// Copyright (C) 2002-2011 Nikolaus Gebhardt
2
// This file is part of the "Irrlicht Engine".
3
// For conditions of distribution and use, see copyright notice in irrlicht.h
5
#ifndef __C_OPENGL_NORMAL_MAP_RENDERER_H_INCLUDED__
6
#define __C_OPENGL_NORMAL_MAP_RENDERER_H_INCLUDED__
8
#include "IrrCompileConfig.h"
9
#ifdef _IRR_COMPILE_WITH_OPENGL_
11
#include "COpenGLShaderMaterialRenderer.h"
12
#include "IShaderConstantSetCallBack.h"
19
//! Class for rendering normal maps with OpenGL
20
class COpenGLNormalMapRenderer : public COpenGLShaderMaterialRenderer, public IShaderConstantSetCallBack
25
COpenGLNormalMapRenderer(video::COpenGLDriver* driver,
26
s32& outMaterialTypeNr, IMaterialRenderer* baseMaterial);
29
~COpenGLNormalMapRenderer();
31
//! Called by the engine when the vertex and/or pixel shader constants for an
32
//! material renderer should be set.
33
virtual void OnSetConstants(IMaterialRendererServices* services, s32 userData);
35
//! Returns the render capability of the material.
36
virtual s32 getRenderCapability() const;
44
} // end namespace video
45
} // end namespace irr