metaforce/Runtime/CLight.hpp

40 lines
867 B
C++
Raw Normal View History

2016-02-13 09:02:47 +00:00
#ifndef __PSHAG_CLIGHT_HPP__
#define __PSHAG_CLIGHT_HPP__
2016-02-09 22:52:33 +00:00
#include "CVector3f.hpp"
#include "CColor.hpp"
2016-02-13 09:02:47 +00:00
namespace pshag
2016-02-09 22:52:33 +00:00
{
enum class ELightType
{
LocalAmbient,
Directional,
Custom,
Spot,
Spot2,
LocalAmbient2
};
enum class EFalloffType
{
Constant,
Linear,
Quadratic
};
class CLight
{
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);
2016-02-09 22:52:33 +00:00
};
}
2016-02-13 09:02:47 +00:00
#endif // __PSHAG_CLIGHT_HPP__