2016-02-13 09:02:47 +00:00
|
|
|
#ifndef __PSHAG_CLIGHT_HPP__
|
|
|
|
#define __PSHAG_CLIGHT_HPP__
|
2015-08-21 00:06:39 +00:00
|
|
|
|
2016-03-04 23:04:53 +00:00
|
|
|
#include "zeus/CVector3f.hpp"
|
|
|
|
#include "zeus/CColor.hpp"
|
|
|
|
|
|
|
|
namespace urde
|
|
|
|
{
|
|
|
|
|
|
|
|
enum class ELightType
|
|
|
|
{
|
|
|
|
LocalAmbient,
|
|
|
|
Directional,
|
|
|
|
Custom,
|
|
|
|
Spot,
|
|
|
|
Spot2,
|
|
|
|
LocalAmbient2
|
|
|
|
};
|
|
|
|
enum class EFalloffType
|
|
|
|
{
|
|
|
|
Constant,
|
|
|
|
Linear,
|
|
|
|
Quadratic
|
|
|
|
};
|
|
|
|
|
2015-08-21 00:06:39 +00:00
|
|
|
class CLight
|
|
|
|
{
|
2016-03-04 23:04:53 +00:00
|
|
|
public:
|
|
|
|
static CLight BuildDirectional(const zeus::CVector3f& dir, const zeus::CColor& color);
|
|
|
|
static CLight BuildSpot(const zeus::CVector3f& pos, const zeus::CVector3f& dir,
|
|
|
|
const zeus::CColor& color, float angle);
|
|
|
|
static CLight BuildCustom(const zeus::CVector3f& pos, const zeus::CVector3f& dir,
|
|
|
|
const zeus::CColor& color, float constAtt, float linearAtt, float quadAtt,
|
|
|
|
float intensity, float, float);
|
2015-08-21 00:06:39 +00:00
|
|
|
};
|
|
|
|
|
2016-03-04 23:04:53 +00:00
|
|
|
}
|
|
|
|
|
2016-02-13 09:02:47 +00:00
|
|
|
#endif // __PSHAG_CLIGHT_HPP__
|