<!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>Crystal Space 1.2.1: csLightProperties Struct Reference (Crystal Space 1.2.1 Public API Reference)</title> <link href="tabs.css" rel="stylesheet" type="text/css"> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="head"> <tr height="59"> <td class="head" width="202" valign="bottom" style="padding-left:0;"><a href="http://www.crystalspace3d.org/"><img src="csblur.png" width="236" height="59" alt="CrystalSpace" border="0"></a></td> <td class="head"><h2>Public API Reference</h2></td> </tr> <tr height="11"> <td colspan="2" class="headshadow" valign="top" style="padding-left:0;"><img src="csblurb.png" width="236" height="11" alt="" border="0"></td> </tr> </table> <div class="content"> <!-- Generated by Doxygen 1.5.3 --> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="classes.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <h1>csLightProperties Struct Reference</h1><!-- doxytag: class="csLightProperties" -->Light properties, as needed by the attenuation and lighting functors. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="vertexlight_8h-source.html">csgfx/vertexlight.h</a>></code> <p> <p> <a href="structcsLightProperties-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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcsLightProperties.html#5ff989bfe1c7eefa122ca7c70813472c">csLightProperties</a> (size_t lightNum, <a class="el" href="classcsLightShaderVarCache.html">csLightShaderVarCache</a> &svcache, const <a class="el" href="structiShaderVarStack.html">iShaderVarStack</a> *Stacks)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Convenience constructor to fill the structure from a set of shader variables. <a href="#5ff989bfe1c7eefa122ca7c70813472c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b84b5a097dc0620e03bec7194d1d0990"></a><!-- doxytag: member="csLightProperties::csLightProperties" ref="b84b5a097dc0620e03bec7194d1d0990" args="()" --> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcsLightProperties.html#b84b5a097dc0620e03bec7194d1d0990">csLightProperties</a> ()</td></tr> <tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcsLightProperties.html#92b6b817b39986a435909f663e6cb0c4">attenuationConsts</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Attenuation coefficients (for CLQ attenuation). <a href="#92b6b817b39986a435909f663e6cb0c4"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__engine3d__light.html#g0040eead4e75eb362c14a866cce0f728">csLightAttenuationMode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcsLightProperties.html#059fff1f2cb5b9b50936d6e90bf3a646">attenuationMode</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Light attenuation mode. <a href="#059fff1f2cb5b9b50936d6e90bf3a646"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsColor.html">csColor</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcsLightProperties.html#b2130f8509d6ea50c2b9eb64f7d340c8">color</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Light diffuse color. <a href="#b2130f8509d6ea50c2b9eb64f7d340c8"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcsLightProperties.html#e768acfd67befdb3fe2c5d2b911033fa">dirObject</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Light direction (object space). <a href="#e768acfd67befdb3fe2c5d2b911033fa"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcsLightProperties.html#e43d67e69c7492634a4f82427decb97d">posObject</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Light position (object space). <a href="#e43d67e69c7492634a4f82427decb97d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsColor.html">csColor</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcsLightProperties.html#c24e9622435a640e48e012d20b9ddc05">specular</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Specular color. <a href="#c24e9622435a640e48e012d20b9ddc05"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="structcsLightProperties.html#e845dd083248858d825a97ee7fccf70d">spotFalloffInner</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Spotlight inner falloff. <a href="#e845dd083248858d825a97ee7fccf70d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="structcsLightProperties.html#adce8ecf9f7134416f1a89a8f93e6e8b">spotFalloffOuter</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Spotlight outer falloff. <a href="#adce8ecf9f7134416f1a89a8f93e6e8b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__engine3d__light.html#ge4baf0a9f20299ab4c39397c9bfbe264">csLightType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcsLightProperties.html#544f97bd9287abc998da9b0fe2742da8">type</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Light type. <a href="#544f97bd9287abc998da9b0fe2742da8"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Light properties, as needed by the attenuation and lighting functors. <p>Definition at line <a class="el" href="vertexlight_8h-source.html#l00042">42</a> of file <a class="el" href="vertexlight_8h-source.html">vertexlight.h</a>.</p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="5ff989bfe1c7eefa122ca7c70813472c"></a><!-- doxytag: member="csLightProperties::csLightProperties" ref="5ff989bfe1c7eefa122ca7c70813472c" args="(size_t lightNum, csLightShaderVarCache &svcache, const iShaderVarStack *Stacks)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">csLightProperties::csLightProperties </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"> <em>lightNum</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classcsLightShaderVarCache.html">csLightShaderVarCache</a> & </td> <td class="paramname"> <em>svcache</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structiShaderVarStack.html">iShaderVarStack</a> * </td> <td class="paramname"> <em>Stacks</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Convenience constructor to fill the structure from a set of shader variables. <p> <p>Definition at line <a class="el" href="vertexlight_8h-source.html#l00072">72</a> of file <a class="el" href="vertexlight_8h-source.html">vertexlight.h</a>.</p> <p>References <a class="el" href="vertexlight_8h-source.html#l00045">attenuationConsts</a>, <a class="el" href="vertexlight_8h-source.html#l00062">attenuationMode</a>, <a class="el" href="vertexlight_8h-source.html#l00054">color</a>, <a class="el" href="light_8h-source.html#l00110">CS_ATTN_NONE</a>, <a class="el" href="light_8h-source.html#l00140">CS_LIGHT_POINTLIGHT</a>, <a class="el" href="vertexlight_8h-source.html#l00052">dirObject</a>, <a class="el" href="structiArrayReadOnly.html#4a09769cbe113928a44a96a4583280be">iArrayReadOnly< T >::Get()</a>, <a class="el" href="classcsLightShaderVarCache.html#e0f9be818f1e7d1a2f54f53f9f633f44">csLightShaderVarCache::GetLightSVId()</a>, <a class="el" href="structiArrayReadOnly.html#a17db8fd7343b9837f8c4183f21bfba0">iArrayReadOnly< T >::GetSize()</a>, <a class="el" href="shadervar_8h-source.html#l00177">csShaderVariable::GetValue()</a>, <a class="el" href="lightsvcache_8h-source.html#l00057">csLightShaderVarCache::lightAttenuation</a>, <a class="el" href="lightsvcache_8h-source.html#l00073">csLightShaderVarCache::lightAttenuationMode</a>, <a class="el" href="lightsvcache_8h-source.html#l00043">csLightShaderVarCache::lightDiffuse</a>, <a class="el" href="lightsvcache_8h-source.html#l00061">csLightShaderVarCache::lightDirection</a>, <a class="el" href="lightsvcache_8h-source.html#l00067">csLightShaderVarCache::lightInnerFalloff</a>, <a class="el" href="lightsvcache_8h-source.html#l00069">csLightShaderVarCache::lightOuterFalloff</a>, <a class="el" href="lightsvcache_8h-source.html#l00047">csLightShaderVarCache::lightPosition</a>, <a class="el" href="lightsvcache_8h-source.html#l00045">csLightShaderVarCache::lightSpecular</a>, <a class="el" href="lightsvcache_8h-source.html#l00071">csLightShaderVarCache::lightType</a>, <a class="el" href="vertexlight_8h-source.html#l00047">posObject</a>, <a class="el" href="vertexlight_8h-source.html#l00064">specular</a>, <a class="el" href="vertexlight_8h-source.html#l00056">spotFalloffInner</a>, <a class="el" href="vertexlight_8h-source.html#l00058">spotFalloffOuter</a>, and <a class="el" href="vertexlight_8h-source.html#l00060">type</a>.</p> </div> </div><p> <hr><h2>Member Data Documentation</h2> <a class="anchor" name="92b6b817b39986a435909f663e6cb0c4"></a><!-- doxytag: member="csLightProperties::attenuationConsts" ref="92b6b817b39986a435909f663e6cb0c4" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> <a class="el" href="structcsLightProperties.html#92b6b817b39986a435909f663e6cb0c4">csLightProperties::attenuationConsts</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Attenuation coefficients (for CLQ attenuation). <p> <p>Definition at line <a class="el" href="vertexlight_8h-source.html#l00045">45</a> of file <a class="el" href="vertexlight_8h-source.html">vertexlight.h</a>.</p> <p>Referenced by <a class="el" href="vertexlight_8h-source.html#l00072">csLightProperties()</a>, and <a class="el" href="vertexlight_8h-source.html#l00149">csLinearAttenuation::csLinearAttenuation()</a>.</p> </div> </div><p> <a class="anchor" name="059fff1f2cb5b9b50936d6e90bf3a646"></a><!-- doxytag: member="csLightProperties::attenuationMode" ref="059fff1f2cb5b9b50936d6e90bf3a646" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__engine3d__light.html#g0040eead4e75eb362c14a866cce0f728">csLightAttenuationMode</a> <a class="el" href="structcsLightProperties.html#059fff1f2cb5b9b50936d6e90bf3a646">csLightProperties::attenuationMode</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Light attenuation mode. <p> <p>Definition at line <a class="el" href="vertexlight_8h-source.html#l00062">62</a> of file <a class="el" href="vertexlight_8h-source.html">vertexlight.h</a>.</p> <p>Referenced by <a class="el" href="vertexlight_8h-source.html#l00072">csLightProperties()</a>.</p> </div> </div><p> <a class="anchor" name="b2130f8509d6ea50c2b9eb64f7d340c8"></a><!-- doxytag: member="csLightProperties::color" ref="b2130f8509d6ea50c2b9eb64f7d340c8" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsColor.html">csColor</a> <a class="el" href="structcsLightProperties.html#b2130f8509d6ea50c2b9eb64f7d340c8">csLightProperties::color</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Light diffuse color. <p> <p>Definition at line <a class="el" href="vertexlight_8h-source.html#l00054">54</a> of file <a class="el" href="vertexlight_8h-source.html">vertexlight.h</a>.</p> <p>Referenced by <a class="el" href="vertexlight_8h-source.html#l00072">csLightProperties()</a>.</p> </div> </div><p> <a class="anchor" name="e768acfd67befdb3fe2c5d2b911033fa"></a><!-- doxytag: member="csLightProperties::dirObject" ref="e768acfd67befdb3fe2c5d2b911033fa" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> <a class="el" href="structcsLightProperties.html#e768acfd67befdb3fe2c5d2b911033fa">csLightProperties::dirObject</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Light direction (object space). <p> <dl class="remark" compact><dt><b>Remarks:</b></dt><dd>Should be a unit vector. </dd></dl> <p>Definition at line <a class="el" href="vertexlight_8h-source.html#l00052">52</a> of file <a class="el" href="vertexlight_8h-source.html">vertexlight.h</a>.</p> <p>Referenced by <a class="el" href="vertexlight_8h-source.html#l00275">csDirectionalLightProc< AttenuationProc >::csDirectionalLightProc()</a>, <a class="el" href="vertexlight_8h-source.html#l00072">csLightProperties()</a>, and <a class="el" href="vertexlight_8h-source.html#l00332">csSpotLightProc< AttenuationProc >::csSpotLightProc()</a>.</p> </div> </div><p> <a class="anchor" name="e43d67e69c7492634a4f82427decb97d"></a><!-- doxytag: member="csLightProperties::posObject" ref="e43d67e69c7492634a4f82427decb97d" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> <a class="el" href="structcsLightProperties.html#e43d67e69c7492634a4f82427decb97d">csLightProperties::posObject</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Light position (object space). <p> <p>Definition at line <a class="el" href="vertexlight_8h-source.html#l00047">47</a> of file <a class="el" href="vertexlight_8h-source.html">vertexlight.h</a>.</p> <p>Referenced by <a class="el" href="vertexlight_8h-source.html#l00275">csDirectionalLightProc< AttenuationProc >::csDirectionalLightProc()</a>, <a class="el" href="vertexlight_8h-source.html#l00072">csLightProperties()</a>, <a class="el" href="vertexlight_8h-source.html#l00225">csPointLightProc< AttenuationProc >::csPointLightProc()</a>, and <a class="el" href="vertexlight_8h-source.html#l00332">csSpotLightProc< AttenuationProc >::csSpotLightProc()</a>.</p> </div> </div><p> <a class="anchor" name="c24e9622435a640e48e012d20b9ddc05"></a><!-- doxytag: member="csLightProperties::specular" ref="c24e9622435a640e48e012d20b9ddc05" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsColor.html">csColor</a> <a class="el" href="structcsLightProperties.html#c24e9622435a640e48e012d20b9ddc05">csLightProperties::specular</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Specular color. <p> <p>Definition at line <a class="el" href="vertexlight_8h-source.html#l00064">64</a> of file <a class="el" href="vertexlight_8h-source.html">vertexlight.h</a>.</p> <p>Referenced by <a class="el" href="vertexlight_8h-source.html#l00072">csLightProperties()</a>.</p> </div> </div><p> <a class="anchor" name="e845dd083248858d825a97ee7fccf70d"></a><!-- doxytag: member="csLightProperties::spotFalloffInner" ref="e845dd083248858d825a97ee7fccf70d" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">float <a class="el" href="structcsLightProperties.html#e845dd083248858d825a97ee7fccf70d">csLightProperties::spotFalloffInner</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Spotlight inner falloff. <p> <p>Definition at line <a class="el" href="vertexlight_8h-source.html#l00056">56</a> of file <a class="el" href="vertexlight_8h-source.html">vertexlight.h</a>.</p> <p>Referenced by <a class="el" href="vertexlight_8h-source.html#l00072">csLightProperties()</a>, and <a class="el" href="vertexlight_8h-source.html#l00332">csSpotLightProc< AttenuationProc >::csSpotLightProc()</a>.</p> </div> </div><p> <a class="anchor" name="adce8ecf9f7134416f1a89a8f93e6e8b"></a><!-- doxytag: member="csLightProperties::spotFalloffOuter" ref="adce8ecf9f7134416f1a89a8f93e6e8b" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">float <a class="el" href="structcsLightProperties.html#adce8ecf9f7134416f1a89a8f93e6e8b">csLightProperties::spotFalloffOuter</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Spotlight outer falloff. <p> <p>Definition at line <a class="el" href="vertexlight_8h-source.html#l00058">58</a> of file <a class="el" href="vertexlight_8h-source.html">vertexlight.h</a>.</p> <p>Referenced by <a class="el" href="vertexlight_8h-source.html#l00072">csLightProperties()</a>, and <a class="el" href="vertexlight_8h-source.html#l00332">csSpotLightProc< AttenuationProc >::csSpotLightProc()</a>.</p> </div> </div><p> <a class="anchor" name="544f97bd9287abc998da9b0fe2742da8"></a><!-- doxytag: member="csLightProperties::type" ref="544f97bd9287abc998da9b0fe2742da8" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__engine3d__light.html#ge4baf0a9f20299ab4c39397c9bfbe264">csLightType</a> <a class="el" href="structcsLightProperties.html#544f97bd9287abc998da9b0fe2742da8">csLightProperties::type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Light type. <p> <p>Definition at line <a class="el" href="vertexlight_8h-source.html#l00060">60</a> of file <a class="el" href="vertexlight_8h-source.html">vertexlight.h</a>.</p> <p>Referenced by <a class="el" href="vertexlight_8h-source.html#l00072">csLightProperties()</a>.</p> </div> </div><p> <hr>The documentation for this struct was generated from the following file:<ul> <li>csgfx/<a class="el" href="vertexlight_8h-source.html">vertexlight.h</a></ul> <hr size="1"><address><small>Generated for Crystal Space 1.2.1 by <a href="http://www.doxygen.org/index.html">doxygen</a> 1.5.3 </small></address> </div></body> </html>