Tucano  0.1
A library for rapid prototyping with modern OpenGL and GLSL
Tucano::Effects::PhongShadowmap Class Reference

Renders a mesh using a Phong shader and a shadow map. More...

#include <phongshadowmap.hpp>

Inheritance diagram for Tucano::Effects::PhongShadowmap:
Tucano::Effect

Public Member Functions

 PhongShadowmap (void)
 Default constructor. More...
 
virtual void initialize (void)
 Load and initialize shaders. More...
 
void render (Tucano::Mesh &mesh, const Tucano::Camera &camera, const Tucano::Camera &light, Tucano::Framebuffer *shadow_fbo)
 Render the mesh given a camera and light, using a Phong shader. More...
 
- Public Member Functions inherited from Tucano::Effect
 Effect (string shadersDir="shaders/")
 Default constructor. More...
 
virtual ShaderloadShader (string shader_name)
 Loads a shader by filename, initializes it, and inserts in shaders list. More...
 
virtual void loadShader (Shader &shader, string shader_name)
 
virtual ShaderloadShader (string shader_name, string vertex_name, string frag_name, string geom_name)
 Loads a shader by complete filenames (with extensions), initializes it, and inserts in shaders list. More...
 
void setShadersDir (string dir)
 
virtual void reloadShaders (void)
 Reloads all shaders needed for effect usage. More...
 

Private Attributes

Tucano::Shader phong_shader
 Phong Shader. More...
 

Additional Inherited Members

- Protected Attributes inherited from Tucano::Effect
std::vector< Shader * > shaders_list
 Vector of pointers to shaders used in this effect, in case the user needs multiple pass rendering. More...
 
string shaders_dir
 Directory in which the shader files are stored. More...
 

Detailed Description

Renders a mesh using a Phong shader and a shadow map.

Constructor & Destructor Documentation

Tucano::Effects::PhongShadowmap::PhongShadowmap ( void  )
inline

Default constructor.

Member Function Documentation

virtual void Tucano::Effects::PhongShadowmap::initialize ( void  )
inlinevirtual

Load and initialize shaders.

Implements Tucano::Effect.

void Tucano::Effects::PhongShadowmap::render ( Tucano::Mesh mesh,
const Tucano::Camera camera,
const Tucano::Camera light,
Tucano::Framebuffer shadow_fbo 
)
inline

Render the mesh given a camera and light, using a Phong shader.

*

Parameters
meshGiven mesh
cameraGiven camera
lightTrackballGiven light camera

Member Data Documentation

Tucano::Shader Tucano::Effects::PhongShadowmap::phong_shader
private

The documentation for this class was generated from the following file: