Fixed the setter methods to recreate the volume light.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1301 dfc29bdd-3216-0410-991c-e03cc46cb475
master
hybrid 2008-03-26 13:59:01 +00:00
parent 7e65d90e54
commit e480b85d31
3 changed files with 33 additions and 5 deletions

View File

@ -215,7 +215,7 @@ int main()
anode->setAnimationSpeed(15);
//volumetric lighting
scene::ISceneNode * n = smgr->addVolumeLightSceneNode(NULL, -1,
scene::IVolumeLightSceneNode * n = smgr->addVolumeLightSceneNode(NULL, -1,
32, //Sub Divid U
32, //Sub Divid V
video::SColor(0, 180, 180, 180), //foot colour

View File

@ -226,6 +226,34 @@ u32 CVolumeLightSceneNode::getMaterialCount() const
}
void CVolumeLightSceneNode::setSubDivideU (const u32 inU)
{
SubdivideU = inU;
constructLight();
}
void CVolumeLightSceneNode::setSubDivideV (const u32 inV)
{
SubdivideV = inV;
constructLight();
}
void CVolumeLightSceneNode::setFootColour(const video::SColor inColouf)
{
FootColour = inColouf;
constructLight();
}
void CVolumeLightSceneNode::setTailColour(const video::SColor inColouf)
{
TailColour = inColouf;
constructLight();
}
//! Writes attributes of the scene node.
void CVolumeLightSceneNode::serializeAttributes(io::IAttributes* out, io::SAttributeReadWriteOptions* options) const
{

View File

@ -57,14 +57,14 @@ namespace scene
//! Creates a clone of this scene node and its children.
virtual ISceneNode* clone(ISceneNode* newParent=0, ISceneManager* newManager=0);
virtual void setSubDivideU (const u32 inU) { SubdivideU = inU; }
virtual void setSubDivideV (const u32 inV) { SubdivideV = inV; }
virtual void setSubDivideU (const u32 inU);
virtual void setSubDivideV (const u32 inV);
virtual u32 getSubDivideU () const { return SubdivideU; }
virtual u32 getSubDivideV () const { return SubdivideV; }
virtual void setFootColour(const video::SColor inColouf) { FootColour = inColouf; }
virtual void setTailColour(const video::SColor inColouf) { TailColour = inColouf; }
virtual void setFootColour(const video::SColor inColouf);
virtual void setTailColour(const video::SColor inColouf);
virtual video::SColor getFootColour () const { return FootColour; }
virtual video::SColor getTailColour () const { return TailColour; }