<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>Irrlicht Engine: irr::scene::ILightSceneNode Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <table class="irrlicht" > <tr valign="middle"> <td><font size="2"><a class="qindex" href="index.html"><font color="#FFFFFF">Home</font></a> | <a class="qindex" href="namespaces.html"><font color="#FFFFFF">Namespaces</font></a> | <a class="qindex" href="hierarchy.html"><font color="#FFFFFF">Hierarchy</font></a> | <a class="qindex" href="classes.html"><font color="#FFFFFF">Alphabetical List</font></a> | <a class="qindex" href="annotated.html"><font color="#FFFFFF"> Class list</font></a> | <a class="qindex" href="files.html"><font color="#FFFFFF">Files</font></a> | <a class="qindex" href="namespacemembers.html"><font color="#FFFFFF"> Namespace Members</font></a> | <a class="qindex" href="functions.html"><font color="#FFFFFF">Class members</font></a> | <a class="qindex" href="globals.html"><font color="#FFFFFF">File members</font></a> | <a class="qindex" href="pages.html"><font color="#FFFFFF">Tutorials</font></a></font> </td> </tr> </table> <!-- Generated by Doxygen 1.5.6 --> <div class="navpath"><a class="el" href="namespaceirr.html">irr</a>::<a class="el" href="namespaceirr_1_1scene.html">scene</a>::<a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html">ILightSceneNode</a> </div> <div class="contents"> <h1>irr::scene::ILightSceneNode Class Reference</h1><!-- doxytag: class="irr::scene::ILightSceneNode" --><!-- doxytag: inherits="irr::scene::ISceneNode" -->Scene node which is a dynamic light. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="_i_light_scene_node_8h-source.html">ILightSceneNode.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for irr::scene::ILightSceneNode:</div> <div class="dynsection"> <p><center><img src="classirr_1_1scene_1_1_i_light_scene_node.png" usemap="#irr::scene::ILightSceneNode_map" border="0" alt=""></center> <map name="irr::scene::ILightSceneNode_map"> <area href="classirr_1_1scene_1_1_i_scene_node.html" alt="irr::scene::ISceneNode" shape="rect" coords="0,112,200,136"> <area href="classirr_1_1io_1_1_i_attribute_exchanging_object.html" alt="irr::io::IAttributeExchangingObject" shape="rect" coords="0,56,200,80"> <area href="classirr_1_1_i_reference_counted.html" alt="irr::IReferenceCounted" shape="rect" coords="0,0,200,24"> </map> </div> <p> <a href="classirr_1_1scene_1_1_i_light_scene_node-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html#1520d051fe04bc8c5c8975fb3908161b">enableCastShadow</a> (bool shadow=true)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets whether this light casts shadows. <a href="#1520d051fe04bc8c5c8975fb3908161b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html#5ba3a03fc0cfbad7dd8ce2f338a1991a">getCastShadow</a> () const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check whether this light casts shadows. <a href="#5ba3a03fc0cfbad7dd8ce2f338a1991a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structirr_1_1video_1_1_s_light.html">video::SLight</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html#20147e049be1a4790346fd72b150b30c">getLightData</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Gets the light data associated with this <a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html" title="Scene node which is a dynamic light.">ILightSceneNode</a>. <a href="#20147e049be1a4790346fd72b150b30c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const <a class="el" href="structirr_1_1video_1_1_s_light.html">video::SLight</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html#687813feae9312a86882e12c2bd10194">getLightData</a> () const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Gets the light data associated with this <a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html" title="Scene node which is a dynamic light.">ILightSceneNode</a>. <a href="#687813feae9312a86882e12c2bd10194"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="namespaceirr_1_1video.html#af0e02f6f83cc35cf9e764bf18400d39">video::E_LIGHT_TYPE</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html#47e327388c75391ebc910369af7eedce">getLightType</a> () const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Gets the light type. <a href="#47e327388c75391ebc910369af7eedce"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html#4ce3cd789ed3adabd381ff7f915861a0">getRadius</a> () const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Gets the light's radius of influence. <a href="#4ce3cd789ed3adabd381ff7f915861a0"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html#a13c236d797d731c1035820a909ba961">ILightSceneNode</a> (<a class="el" href="classirr_1_1scene_1_1_i_scene_node.html">ISceneNode</a> *parent, <a class="el" href="classirr_1_1scene_1_1_i_scene_manager.html">ISceneManager</a> *mgr, <a class="el" href="namespaceirr.html#c66849b7a6ed16e30ebede579f9b47c6">s32</a> id, const <a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> &position=<a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>(0, 0, 0))</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">constructor <a href="#a13c236d797d731c1035820a909ba961"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html#cf74ff3400a26ae31eb96b9c479e62d5">setLightData</a> (const <a class="el" href="structirr_1_1video_1_1_s_light.html">video::SLight</a> &light)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets the light data associated with this <a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html" title="Scene node which is a dynamic light.">ILightSceneNode</a>. <a href="#cf74ff3400a26ae31eb96b9c479e62d5"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html#18b3c0ba831bdc9166db341a35701c9b">setLightType</a> (<a class="el" href="namespaceirr_1_1video.html#af0e02f6f83cc35cf9e764bf18400d39">video::E_LIGHT_TYPE</a> type)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets the light type. <a href="#18b3c0ba831bdc9166db341a35701c9b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html#7da64c8c4776988a39927827f2c3f364">setRadius</a> (<a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a> radius)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets the light's radius of influence. <a href="#7da64c8c4776988a39927827f2c3f364"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html#3a6a6681a665ec4c214cda8a84a29337">setVisible</a> (bool isVisible)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sets if the node should be visible or not. <a href="#3a6a6681a665ec4c214cda8a84a29337"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Scene node which is a dynamic light. <p> You can switch the light on and off by making it visible or not. It can be animated by ordinary <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node animators. If the light type is directional or spot, the direction of the light source is defined by the rotation of the <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node (assuming (0,0,1) as the local direction of the light). <p>Definition at line <a class="el" href="_i_light_scene_node_8h-source.html#l00022">22</a> of file <a class="el" href="_i_light_scene_node_8h-source.html">ILightSceneNode.h</a>.</p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="a13c236d797d731c1035820a909ba961"></a><!-- doxytag: member="irr::scene::ILightSceneNode::ILightSceneNode" ref="a13c236d797d731c1035820a909ba961" args="(ISceneNode *parent, ISceneManager *mgr, s32 id, const core::vector3df &position=core::vector3df(0, 0, 0))" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">irr::scene::ILightSceneNode::ILightSceneNode </td> <td>(</td> <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_scene_node.html">ISceneNode</a> * </td> <td class="paramname"> <em>parent</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_scene_manager.html">ISceneManager</a> * </td> <td class="paramname"> <em>mgr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="namespaceirr.html#c66849b7a6ed16e30ebede579f9b47c6">s32</a> </td> <td class="paramname"> <em>id</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> & </td> <td class="paramname"> <em>position</em> = <code><a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a>(0,0,0)</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> constructor <p> <p>Definition at line <a class="el" href="_i_light_scene_node_8h-source.html#l00027">27</a> of file <a class="el" href="_i_light_scene_node_8h-source.html">ILightSceneNode.h</a>.</p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="1520d051fe04bc8c5c8975fb3908161b"></a><!-- doxytag: member="irr::scene::ILightSceneNode::enableCastShadow" ref="1520d051fe04bc8c5c8975fb3908161b" args="(bool shadow=true)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void irr::scene::ILightSceneNode::enableCastShadow </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"> <em>shadow</em> = <code>true</code> </td> <td> ) </td> <td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Sets whether this light casts shadows. <p> Enabling this flag won't automatically cast shadows, the meshes will still need shadow <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> nodes attached. But one can enable or disable distinct lights for shadow casting for performance reasons. <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>shadow</em> </td><td>True if this light shall cast shadows. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="5ba3a03fc0cfbad7dd8ce2f338a1991a"></a><!-- doxytag: member="irr::scene::ILightSceneNode::getCastShadow" ref="5ba3a03fc0cfbad7dd8ce2f338a1991a" args="() const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool irr::scene::ILightSceneNode::getCastShadow </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Check whether this light casts shadows. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if light would cast shadows, else false. </dd></dl> </div> </div><p> <a class="anchor" name="20147e049be1a4790346fd72b150b30c"></a><!-- doxytag: member="irr::scene::ILightSceneNode::getLightData" ref="20147e049be1a4790346fd72b150b30c" args="()=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="structirr_1_1video_1_1_s_light.html">video::SLight</a>& irr::scene::ILightSceneNode::getLightData </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Gets the light data associated with this <a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html" title="Scene node which is a dynamic light.">ILightSceneNode</a>. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The light data. </dd></dl> </div> </div><p> <a class="anchor" name="687813feae9312a86882e12c2bd10194"></a><!-- doxytag: member="irr::scene::ILightSceneNode::getLightData" ref="687813feae9312a86882e12c2bd10194" args="() const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual const <a class="el" href="structirr_1_1video_1_1_s_light.html">video::SLight</a>& irr::scene::ILightSceneNode::getLightData </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Gets the light data associated with this <a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html" title="Scene node which is a dynamic light.">ILightSceneNode</a>. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The light data. </dd></dl> </div> </div><p> <a class="anchor" name="47e327388c75391ebc910369af7eedce"></a><!-- doxytag: member="irr::scene::ILightSceneNode::getLightType" ref="47e327388c75391ebc910369af7eedce" args="() const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="namespaceirr_1_1video.html#af0e02f6f83cc35cf9e764bf18400d39">video::E_LIGHT_TYPE</a> irr::scene::ILightSceneNode::getLightType </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Gets the light type. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The current light type. </dd></dl> </div> </div><p> <a class="anchor" name="4ce3cd789ed3adabd381ff7f915861a0"></a><!-- doxytag: member="irr::scene::ILightSceneNode::getRadius" ref="4ce3cd789ed3adabd381ff7f915861a0" args="() const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a> irr::scene::ILightSceneNode::getRadius </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Gets the light's radius of influence. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The current radius. </dd></dl> </div> </div><p> <a class="anchor" name="cf74ff3400a26ae31eb96b9c479e62d5"></a><!-- doxytag: member="irr::scene::ILightSceneNode::setLightData" ref="cf74ff3400a26ae31eb96b9c479e62d5" args="(const video::SLight &light)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void irr::scene::ILightSceneNode::setLightData </td> <td>(</td> <td class="paramtype">const <a class="el" href="structirr_1_1video_1_1_s_light.html">video::SLight</a> & </td> <td class="paramname"> <em>light</em> </td> <td> ) </td> <td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Sets the light data associated with this <a class="el" href="classirr_1_1scene_1_1_i_light_scene_node.html" title="Scene node which is a dynamic light.">ILightSceneNode</a>. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>light</em> </td><td>The new light data. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="18b3c0ba831bdc9166db341a35701c9b"></a><!-- doxytag: member="irr::scene::ILightSceneNode::setLightType" ref="18b3c0ba831bdc9166db341a35701c9b" args="(video::E_LIGHT_TYPE type)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void irr::scene::ILightSceneNode::setLightType </td> <td>(</td> <td class="paramtype"><a class="el" href="namespaceirr_1_1video.html#af0e02f6f83cc35cf9e764bf18400d39">video::E_LIGHT_TYPE</a> </td> <td class="paramname"> <em>type</em> </td> <td> ) </td> <td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Sets the light type. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>type</em> </td><td>The new type. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="7da64c8c4776988a39927827f2c3f364"></a><!-- doxytag: member="irr::scene::ILightSceneNode::setRadius" ref="7da64c8c4776988a39927827f2c3f364" args="(f32 radius)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void irr::scene::ILightSceneNode::setRadius </td> <td>(</td> <td class="paramtype"><a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a> </td> <td class="paramname"> <em>radius</em> </td> <td> ) </td> <td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Sets the light's radius of influence. <p> Outside this radius the light won't lighten geometry and cast no shadows. Setting the radius will also influence the attenuation, setting it to (0,1/radius,0). If you want to override this behavior, set the attenuation after the radius. <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>radius</em> </td><td>The new radius. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="3a6a6681a665ec4c214cda8a84a29337"></a><!-- doxytag: member="irr::scene::ILightSceneNode::setVisible" ref="3a6a6681a665ec4c214cda8a84a29337" args="(bool isVisible)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void irr::scene::ILightSceneNode::setVisible </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"> <em>isVisible</em> </td> <td> ) </td> <td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Sets if the node should be visible or not. <p> All children of this node won't be visible either, when set to true. <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>isVisible</em> </td><td>If the node shall be visible. </td></tr> </table> </dl> <p>Reimplemented from <a class="el" href="classirr_1_1scene_1_1_i_scene_node.html#2e3a88fe87d11caa7986a203afe6838c">irr::scene::ISceneNode</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="_i_light_scene_node_8h-source.html">ILightSceneNode.h</a></ul> </div> <hr size="1"> <address style="align: right;"> <small> </small> </address> <table width="100%" border="0" cellspacing="0" cellpadding="2"> <tr> <td width="0"> <div align="left"><small><a href="http://irrlicht.sourceforge.net" target="_blank"><img src="irrlicht.png" alt="The Irrlicht Engine" align="middle" border=0 width=88 height=31></a></small></div></td> <td> <div align="left"><small><em><font size="2">The <a href="http://irrlicht.sourceforge.net" target="_blank">Irrlicht Engine</a> Documentation © 2003-2009 by Nikolaus Gebhardt. Generated on Sun Jan 10 09:24:13 2010 by <a href="http://www.doxygen.org" target="_blank">Doxygen</a> (1.5.6)</font></em></small></div></td> </tr> </table> <address style="align: right;"> </address> </body> </html>