KRSpotLight is now using KRNodeProperty
This commit is contained in:
@@ -38,14 +38,12 @@ using namespace hydra;
|
||||
void KRSpotLight::InitNodeInfo(KrNodeInfo* nodeInfo)
|
||||
{
|
||||
KRLight::InitNodeInfo(nodeInfo);
|
||||
nodeInfo->light.spot.inner_angle = M_PI_4;
|
||||
nodeInfo->light.spot.outer_angle = M_PI_2;
|
||||
nodeInfo->light.spot.inner_angle = decltype(m_innerAngle)::defaultVal;
|
||||
nodeInfo->light.spot.outer_angle = decltype(m_outerAngle)::defaultVal;
|
||||
}
|
||||
|
||||
KRSpotLight::KRSpotLight(KRScene& scene, std::string name) : KRLight(scene, name)
|
||||
{
|
||||
m_innerAngle = M_PI_4;
|
||||
m_outerAngle = M_PI_2;
|
||||
}
|
||||
|
||||
KRSpotLight::~KRSpotLight()
|
||||
@@ -61,8 +59,8 @@ std::string KRSpotLight::getElementName()
|
||||
tinyxml2::XMLElement* KRSpotLight::saveXML(tinyxml2::XMLNode* parent)
|
||||
{
|
||||
tinyxml2::XMLElement* e = KRLight::saveXML(parent);
|
||||
e->SetAttribute("inner_angle", m_innerAngle);
|
||||
e->SetAttribute("outer_angle", m_outerAngle);
|
||||
m_innerAngle.save(e);
|
||||
m_outerAngle.save(e);
|
||||
return e;
|
||||
}
|
||||
|
||||
@@ -70,8 +68,8 @@ void KRSpotLight::loadXML(tinyxml2::XMLElement* e)
|
||||
{
|
||||
KRLight::loadXML(e);
|
||||
|
||||
e->QueryFloatAttribute("inner_angle", &m_innerAngle);
|
||||
e->QueryFloatAttribute("outer_angle", &m_outerAngle);
|
||||
m_innerAngle.load(e);
|
||||
m_outerAngle.load(e);
|
||||
}
|
||||
|
||||
float KRSpotLight::getInnerAngle()
|
||||
|
||||
@@ -52,6 +52,8 @@ public:
|
||||
void setOuterAngle(float outerAngle);
|
||||
|
||||
private:
|
||||
float m_innerAngle; // Inner angle of the cone, in radians. Inside this radius, the light will be at full brightness
|
||||
float m_outerAngle; // Outer angle of the cone, in radians. Outside this radius, the light will be completely attenuated
|
||||
// Inner angle of the cone, in radians. Inside this radius, the light will be at full brightness
|
||||
KRNODE_PROPERTY(float, m_innerAngle, M_PI_4, "inner_angle");
|
||||
// Outer angle of the cone, in radians. Outside this radius, the light will be completely attenuated
|
||||
KRNODE_PROPERTY(float, m_outerAngle, M_PI_2, "outer_angle");
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user