2013-12-08 16:56:59 +00:00
|
|
|
#ifndef LIGHTFILTER_H
|
|
|
|
#define LIGHTFILTER_H
|
|
|
|
|
|
|
|
#include "software_global.h"
|
|
|
|
|
|
|
|
namespace paysages {
|
|
|
|
namespace software {
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief Interface for rendering parts that can alter light.
|
|
|
|
*/
|
|
|
|
class SOFTWARESHARED_EXPORT LightFilter
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
/**
|
|
|
|
* @brief Apply filtering on a light component.
|
|
|
|
*
|
|
|
|
* This will alter the component and return if the component is still
|
|
|
|
* useful.
|
|
|
|
*/
|
2013-12-17 22:45:09 +00:00
|
|
|
virtual bool applyLightFilter(LightComponent &light, const Vector3 &at) = 0;
|
2013-12-08 16:56:59 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif // LIGHTFILTER_H
|