Easy3D 2.5.3
EyeDomeLighting Class Reference

An implementation of the Eye Dome Lighting (EDL) technique. More...

#include <easy3d/renderer/eye_dome_lighting.h>

Public Member Functions

 EyeDomeLighting (Camera *cam)
 Constructor. More...
 
void begin ()
 
void end ()
 

Detailed Description

An implementation of the Eye Dome Lighting (EDL) technique.

This class implements an EDL offscreen shading method, which is useful for rendering point clouds without normal information.

Two image resolutions are used.

This pass expects an initialized depth buffer and color buffer. Initialized buffers means they have been cleared with the farthest z-value and background color/gradient/transparent color. An opaque pass may have been performed right after the initialization.

Optimization tips: Rendering with multi-effects (e.g., shadowing, SSAO) an benefit from sharing the same geometry pass.

Example usage:

if (camera()->type() == Camera::PERSPECTIVE)
edl_->begin(width(), height(), camera()->zNear(), camera()->zFar());
else {
float r = camera()->sceneRadius();
edl_->begin(width(), height(), 2.0f * r, 10.0f * r);
}
draw(); // your rendering code here
edl_->end(camera()->sceneRadius());
Examples
Tutorial_505_EyeDomeLighting.

Constructor & Destructor Documentation

◆ EyeDomeLighting()

EyeDomeLighting ( Camera cam)
explicit

Constructor.

Parameters
camThe camera used in the view

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