source: NonGTP/FCollada/Documentation/class_f_c_d_material.html @ 964

Revision 964, 30.7 KB checked in by igarcia, 18 years ago (diff)
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3<title>FCollada: FCDMaterial Class Reference</title>
4<link href="doxygen.css" rel="stylesheet" type="text/css">
5<link href="tabs.css" rel="stylesheet" type="text/css">
6</head><body>
7<!-- Generated by Doxygen 1.4.6-NO -->
8<div class="tabs">
9  <ul>
10    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
11    <li><a href="modules.html"><span>Modules</span></a></li>
12    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
13    <li id="current"><a href="classes.html"><span>Classes</span></a></li>
14    <li><a href="files.html"><span>Files</span></a></li>
15    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
16  </ul></div>
17<div class="tabs">
18  <ul>
19    <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
20    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
21    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
22    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
23  </ul></div>
24<h1>FCDMaterial Class Reference<br>
25<small>
26[<a class="el" href="group___f_c_document.html">COLLADA Document Object Model.</a>]</small>
27</h1><!-- doxytag: class="FCDMaterial" --><!-- doxytag: inherits="FCDEntity" -->A COLLADA material. 
28<a href="#_details">More...</a>
29<p>
30<code>#include &lt;<a class="el" href="_f_c_d_material_8h-source.html">FCDMaterial.h</a>&gt;</code>
31<p>
32<p>Inheritance diagram for FCDMaterial:
33<p><center><img src="class_f_c_d_material.png" usemap="#FCDMaterial_map" border="0" alt=""></center>
34<map name="FCDMaterial_map">
35<area href="class_f_c_d_entity.html" alt="FCDEntity" shape="rect" coords="0,168,109,192">
36<area href="class_f_c_d_object_with_id.html" alt="FCDObjectWithId" shape="rect" coords="0,112,109,136">
37<area href="class_f_c_d_object.html" alt="FCDObject" shape="rect" coords="0,56,109,80">
38<area href="class_f_u_object.html" alt="FUObject" shape="rect" coords="0,0,109,24">
39</map>
40<a href="class_f_c_d_material-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
41<tr><td></td></tr>
42<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
43<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#a4dd4881fb4a591e9362eed48718a8ad">FCDMaterial</a> (<a class="el" href="class_f_c_document.html">FCDocument</a> *document)</td></tr>
44
45<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor: do not use directly.  <a href="#a4dd4881fb4a591e9362eed48718a8ad"></a><br></td></tr>
46<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#24bab210775cde46d569134b358680db">~FCDMaterial</a> ()</td></tr>
47
48<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor: do not use directly.  <a href="#24bab210775cde46d569134b358680db"></a><br></td></tr>
49<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="class_f_c_d_entity.html#9301a4bd5f4d4190ec13e40db4effdd7">Type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#eeaf2e7f96a1b3efc7daac490b1e5e8f">GetType</a> () const </td></tr>
50
51<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves the entity type for this class.  <a href="#eeaf2e7f96a1b3efc7daac490b1e5e8f"></a><br></td></tr>
52<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_c_d_effect.html">FCDEffect</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#1992dea70f24be2d15505e7713f144aa">GetEffect</a> ()</td></tr>
53
54<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves the effect instantiated for this material.  <a href="#1992dea70f24be2d15505e7713f144aa"></a><br></td></tr>
55<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ad7d58353caa5749886101fded9d44aa"></a><!-- doxytag: member="FCDMaterial::GetEffect" ref="ad7d58353caa5749886101fded9d44aa" args="() const " -->
56const <a class="el" href="class_f_c_d_effect.html">FCDEffect</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#ad7d58353caa5749886101fded9d44aa">GetEffect</a> () const </td></tr>
57
58<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See above. <br></td></tr>
59<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#f5a95739d8051b054f982f562887dbf4">SetEffect</a> (<a class="el" href="class_f_c_d_effect.html">FCDEffect</a> *_effect)</td></tr>
60
61<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the effect instantiated for this material.  <a href="#f5a95739d8051b054f982f562887dbf4"></a><br></td></tr>
62<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classvector.html">FCDMaterialTechniqueHintList</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#3447a9b64d3e2c9f3d11580481eed937">GetTechniqueHints</a> ()</td></tr>
63
64<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves the list of the material platform-technique hints.  <a href="#3447a9b64d3e2c9f3d11580481eed937"></a><br></td></tr>
65<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b8af6e4d2bf012eea502b6a1dfb09a95"></a><!-- doxytag: member="FCDMaterial::GetTechniqueHints" ref="b8af6e4d2bf012eea502b6a1dfb09a95" args="() const " -->
66const <a class="el" href="classvector.html">FCDMaterialTechniqueHintList</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#b8af6e4d2bf012eea502b6a1dfb09a95">GetTechniqueHints</a> () const </td></tr>
67
68<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See above. <br></td></tr>
69<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_c_d_effect_parameter_list.html">FCDEffectParameterList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#b9a0478b8882ab2c52f80ce7f1989ba9">GetParameters</a> ()</td></tr>
70
71<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves the list of effect parameter overrides.  <a href="#b9a0478b8882ab2c52f80ce7f1989ba9"></a><br></td></tr>
72<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="add8dcd5b17b6610cb3e160c58f95a7f"></a><!-- doxytag: member="FCDMaterial::GetParameters" ref="add8dcd5b17b6610cb3e160c58f95a7f" args="() const " -->
73const <a class="el" href="class_f_c_d_effect_parameter_list.html">FCDEffectParameterList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#add8dcd5b17b6610cb3e160c58f95a7f">GetParameters</a> () const </td></tr>
74
75<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See above. <br></td></tr>
76<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#1d37dd48dc693192dcfe88c53b3c1548">FindParameterBySemantic</a> (const string &amp;semantic)</td></tr>
77
78<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves an effect parameter override.  <a href="#1d37dd48dc693192dcfe88c53b3c1548"></a><br></td></tr>
79<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#545f687a0fcf25e94e00b1899b51b43e">FindParametersBySemantic</a> (const string &amp;semantic, <a class="el" href="class_f_c_d_effect_parameter_list.html">FCDEffectParameterList</a> &amp;parameters)</td></tr>
80
81<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves a subset of the effect parameter override list.  <a href="#545f687a0fcf25e94e00b1899b51b43e"></a><br></td></tr>
82<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#4f42394c38ef5ccf4bae7229120bf673">FindParametersByReference</a> (const string &amp;reference, <a class="el" href="class_f_c_d_effect_parameter_list.html">FCDEffectParameterList</a> &amp;parameters)</td></tr>
83
84<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves a subset of the effect parameter override list.  <a href="#4f42394c38ef5ccf4bae7229120bf673"></a><br></td></tr>
85<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_c_d_material.html">FCDMaterial</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#807065f2b630463e7b66a59b08970fb9">Clone</a> ()</td></tr>
86
87<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">[INTERNAL] Clones the material object.  <a href="#807065f2b630463e7b66a59b08970fb9"></a><br></td></tr>
88<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#e76ddebd692b0de15d6036dd972f3fef">Flatten</a> ()</td></tr>
89
90<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">[INTERNAL] Flattens the material, pushing all the effect parameter overrides into the effect parameter generators and moving all the parameters to the effect technique level of abstraction.  <a href="#e76ddebd692b0de15d6036dd972f3fef"></a><br></td></tr>
91<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="class_f_u_status.html">FUStatus</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#9c14aec6b095e0a263635a41f037f331">LoadFromXML</a> (xmlNode *materialNode)</td></tr>
92
93<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">[INTERNAL] Reads in the &lt;material&gt; element from a given COLLADA XML tree node.  <a href="#9c14aec6b095e0a263635a41f037f331"></a><br></td></tr>
94<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual xmlNode *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_material.html#6a7dd4f4a4d3b422f4177cf0a531014c">WriteToXML</a> (xmlNode *parentNode) const </td></tr>
95
96<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">[INTERNAL] Writes out the &lt;material&gt; element to the given COLLADA XML tree node.  <a href="#6a7dd4f4a4d3b422f4177cf0a531014c"></a><br></td></tr>
97</table>
98<hr><a name="_details"></a><h2>Detailed Description</h2>
99A COLLADA material.
100<p>
101A COLLADA material is one of many abstraction level that defines how to render mesh polygon sets. It instantiates an effect and may overrides some of the effect parameters with its own values.<p>
102Unless you care about the construction history or memory, you should probably use the <a class="el" href="class_f_c_d_material_instance.html#58182994223d2cbc81d90b1dab289239">FCDMaterialInstance::FlattenMaterial</a> function.
103<p>
104<hr><h2>Constructor &amp; Destructor Documentation</h2>
105<a class="anchor" name="a4dd4881fb4a591e9362eed48718a8ad"></a><!-- doxytag: member="FCDMaterial::FCDMaterial" ref="a4dd4881fb4a591e9362eed48718a8ad" args="(FCDocument *document)" --><p>
106<table class="mdTable" cellpadding="2" cellspacing="0">
107  <tr>
108    <td class="mdRow">
109      <table cellpadding="0" cellspacing="0" border="0">
110        <tr>
111          <td class="md" nowrap valign="top">FCDMaterial::FCDMaterial           </td>
112          <td class="md" valign="top">(&nbsp;</td>
113          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_document.html">FCDocument</a> *&nbsp;</td>
114          <td class="mdname1" valign="top" nowrap> <em>document</em>          </td>
115          <td class="md" valign="top">&nbsp;)&nbsp;</td>
116          <td class="md" nowrap></td>
117        </tr>
118      </table>
119    </td>
120  </tr>
121</table>
122<table cellspacing="5" cellpadding="0" border="0">
123  <tr>
124    <td>
125      &nbsp;
126    </td>
127    <td>
128
129<p>
130Constructor: do not use directly.
131<p>
132Instead, use the <a class="el" href="class_f_c_d_material_library.html#79eae716a86ccd4e74e02a71e2999b0d">FCDMaterialLibrary::AddMaterial</a> function. <dl compact><dt><b>Parameters:</b></dt><dd>
133  <table border="0" cellspacing="2" cellpadding="0">
134    <tr><td valign="top"></td><td valign="top"><em>document</em>&nbsp;</td><td>The COLLADA document that owns the material. </td></tr>
135  </table>
136</dl>
137    </td>
138  </tr>
139</table>
140<a class="anchor" name="24bab210775cde46d569134b358680db"></a><!-- doxytag: member="FCDMaterial::~FCDMaterial" ref="24bab210775cde46d569134b358680db" args="()" --><p>
141<table class="mdTable" cellpadding="2" cellspacing="0">
142  <tr>
143    <td class="mdRow">
144      <table cellpadding="0" cellspacing="0" border="0">
145        <tr>
146          <td class="md" nowrap valign="top">virtual FCDMaterial::~FCDMaterial           </td>
147          <td class="md" valign="top">(&nbsp;</td>
148          <td class="mdname1" valign="top" nowrap>          </td>
149          <td class="md" valign="top">&nbsp;)&nbsp;</td>
150          <td class="md" nowrap><code> [virtual]</code></td>
151        </tr>
152      </table>
153    </td>
154  </tr>
155</table>
156<table cellspacing="5" cellpadding="0" border="0">
157  <tr>
158    <td>
159      &nbsp;
160    </td>
161    <td>
162
163<p>
164Destructor: do not use directly.
165<p>
166The material library will release all the materials when it is released. If you want to remove a material from the material library: use the FCDMaterialLibrary::RemoveMaterial function.     </td>
167  </tr>
168</table>
169<hr><h2>Member Function Documentation</h2>
170<a class="anchor" name="807065f2b630463e7b66a59b08970fb9"></a><!-- doxytag: member="FCDMaterial::Clone" ref="807065f2b630463e7b66a59b08970fb9" args="()" --><p>
171<table class="mdTable" cellpadding="2" cellspacing="0">
172  <tr>
173    <td class="mdRow">
174      <table cellpadding="0" cellspacing="0" border="0">
175        <tr>
176          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_material.html">FCDMaterial</a>* FCDMaterial::Clone           </td>
177          <td class="md" valign="top">(&nbsp;</td>
178          <td class="mdname1" valign="top" nowrap>          </td>
179          <td class="md" valign="top">&nbsp;)&nbsp;</td>
180          <td class="md" nowrap></td>
181        </tr>
182      </table>
183    </td>
184  </tr>
185</table>
186<table cellspacing="5" cellpadding="0" border="0">
187  <tr>
188    <td>
189      &nbsp;
190    </td>
191    <td>
192
193<p>
194[INTERNAL] Clones the material object.
195<p>
196Everything is cloned, including the effect parameter. You will need release the cloned material directly, by deleting the pointer. <dl compact><dt><b>Returns:</b></dt><dd>The cloned material object. You will must delete this pointer. </dd></dl>
197    </td>
198  </tr>
199</table>
200<a class="anchor" name="1d37dd48dc693192dcfe88c53b3c1548"></a><!-- doxytag: member="FCDMaterial::FindParameterBySemantic" ref="1d37dd48dc693192dcfe88c53b3c1548" args="(const string &amp;semantic)" --><p>
201<table class="mdTable" cellpadding="2" cellspacing="0">
202  <tr>
203    <td class="mdRow">
204      <table cellpadding="0" cellspacing="0" border="0">
205        <tr>
206          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* FCDMaterial::FindParameterBySemantic           </td>
207          <td class="md" valign="top">(&nbsp;</td>
208          <td class="md" nowrap valign="top">const string &amp;&nbsp;</td>
209          <td class="mdname1" valign="top" nowrap> <em>semantic</em>          </td>
210          <td class="md" valign="top">&nbsp;)&nbsp;</td>
211          <td class="md" nowrap></td>
212        </tr>
213      </table>
214    </td>
215  </tr>
216</table>
217<table cellspacing="5" cellpadding="0" border="0">
218  <tr>
219    <td>
220      &nbsp;
221    </td>
222    <td>
223
224<p>
225Retrieves an effect parameter override.
226<p>
227Looks for the effect parameter override with the correct semantic, in order to bind or set its value. This function searches through the material and the level of abstractions below. <dl compact><dt><b>Parameters:</b></dt><dd>
228  <table border="0" cellspacing="2" cellpadding="0">
229    <tr><td valign="top"></td><td valign="top"><em>semantic</em>&nbsp;</td><td>The effect parameter semantic to match. </td></tr>
230  </table>
231</dl>
232<dl compact><dt><b>Returns:</b></dt><dd>The effect parameter override that matches the semantic. This pointer will be NULL if no effect parameter override matches the given semantic. </dd></dl>
233    </td>
234  </tr>
235</table>
236<a class="anchor" name="4f42394c38ef5ccf4bae7229120bf673"></a><!-- doxytag: member="FCDMaterial::FindParametersByReference" ref="4f42394c38ef5ccf4bae7229120bf673" args="(const string &amp;reference, FCDEffectParameterList &amp;parameters)" --><p>
237<table class="mdTable" cellpadding="2" cellspacing="0">
238  <tr>
239    <td class="mdRow">
240      <table cellpadding="0" cellspacing="0" border="0">
241        <tr>
242          <td class="md" nowrap valign="top">void FCDMaterial::FindParametersByReference           </td>
243          <td class="md" valign="top">(&nbsp;</td>
244          <td class="md" nowrap valign="top">const string &amp;&nbsp;</td>
245          <td class="mdname" nowrap> <em>reference</em>, </td>
246        </tr>
247        <tr>
248          <td class="md" nowrap align="right"></td>
249          <td class="md"></td>
250          <td class="md" nowrap><a class="el" href="class_f_c_d_effect_parameter_list.html">FCDEffectParameterList</a> &amp;&nbsp;</td>
251          <td class="mdname" nowrap> <em>parameters</em></td>
252        </tr>
253        <tr>
254          <td class="md"></td>
255          <td class="md">)&nbsp;</td>
256          <td class="md" colspan="2"></td>
257        </tr>
258      </table>
259    </td>
260  </tr>
261</table>
262<table cellspacing="5" cellpadding="0" border="0">
263  <tr>
264    <td>
265      &nbsp;
266    </td>
267    <td>
268
269<p>
270Retrieves a subset of the effect parameter override list.
271<p>
272Look for the effect parameter overrides with the correct reference. This function searches through the material and the level of abstractions below. <dl compact><dt><b>Parameters:</b></dt><dd>
273  <table border="0" cellspacing="2" cellpadding="0">
274    <tr><td valign="top"></td><td valign="top"><em>reference</em>&nbsp;</td><td>The effect parameter reference to match. In the case of effect parameter generators, the reference is replaced by the sub-id. </td></tr>
275    <tr><td valign="top"></td><td valign="top"><em>parameters</em>&nbsp;</td><td>The list of parameters to fill in. This list is not cleared. </td></tr>
276  </table>
277</dl>
278    </td>
279  </tr>
280</table>
281<a class="anchor" name="545f687a0fcf25e94e00b1899b51b43e"></a><!-- doxytag: member="FCDMaterial::FindParametersBySemantic" ref="545f687a0fcf25e94e00b1899b51b43e" args="(const string &amp;semantic, FCDEffectParameterList &amp;parameters)" --><p>
282<table class="mdTable" cellpadding="2" cellspacing="0">
283  <tr>
284    <td class="mdRow">
285      <table cellpadding="0" cellspacing="0" border="0">
286        <tr>
287          <td class="md" nowrap valign="top">void FCDMaterial::FindParametersBySemantic           </td>
288          <td class="md" valign="top">(&nbsp;</td>
289          <td class="md" nowrap valign="top">const string &amp;&nbsp;</td>
290          <td class="mdname" nowrap> <em>semantic</em>, </td>
291        </tr>
292        <tr>
293          <td class="md" nowrap align="right"></td>
294          <td class="md"></td>
295          <td class="md" nowrap><a class="el" href="class_f_c_d_effect_parameter_list.html">FCDEffectParameterList</a> &amp;&nbsp;</td>
296          <td class="mdname" nowrap> <em>parameters</em></td>
297        </tr>
298        <tr>
299          <td class="md"></td>
300          <td class="md">)&nbsp;</td>
301          <td class="md" colspan="2"></td>
302        </tr>
303      </table>
304    </td>
305  </tr>
306</table>
307<table cellspacing="5" cellpadding="0" border="0">
308  <tr>
309    <td>
310      &nbsp;
311    </td>
312    <td>
313
314<p>
315Retrieves a subset of the effect parameter override list.
316<p>
317Look for the effect parameter overrides with the correct semantic. This function searches through the material and the level of abstractions below. <dl compact><dt><b>Parameters:</b></dt><dd>
318  <table border="0" cellspacing="2" cellpadding="0">
319    <tr><td valign="top"></td><td valign="top"><em>semantic</em>&nbsp;</td><td>The effect parameter semantic to match. </td></tr>
320    <tr><td valign="top"></td><td valign="top"><em>parameters</em>&nbsp;</td><td>The list of parameters to fill in. This list is not cleared. </td></tr>
321  </table>
322</dl>
323    </td>
324  </tr>
325</table>
326<a class="anchor" name="e76ddebd692b0de15d6036dd972f3fef"></a><!-- doxytag: member="FCDMaterial::Flatten" ref="e76ddebd692b0de15d6036dd972f3fef" args="()" --><p>
327<table class="mdTable" cellpadding="2" cellspacing="0">
328  <tr>
329    <td class="mdRow">
330      <table cellpadding="0" cellspacing="0" border="0">
331        <tr>
332          <td class="md" nowrap valign="top">void FCDMaterial::Flatten           </td>
333          <td class="md" valign="top">(&nbsp;</td>
334          <td class="mdname1" valign="top" nowrap>          </td>
335          <td class="md" valign="top">&nbsp;)&nbsp;</td>
336          <td class="md" nowrap></td>
337        </tr>
338      </table>
339    </td>
340  </tr>
341</table>
342<table cellspacing="5" cellpadding="0" border="0">
343  <tr>
344    <td>
345      &nbsp;
346    </td>
347    <td>
348
349<p>
350[INTERNAL] Flattens the material, pushing all the effect parameter overrides into the effect parameter generators and moving all the parameters to the effect technique level of abstraction.
351<p>
352To flatten the material, use the <a class="el" href="class_f_c_d_material_instance.html#58182994223d2cbc81d90b1dab289239">FCDMaterialInstance::FlattenMaterial</a> function.     </td>
353  </tr>
354</table>
355<a class="anchor" name="1992dea70f24be2d15505e7713f144aa"></a><!-- doxytag: member="FCDMaterial::GetEffect" ref="1992dea70f24be2d15505e7713f144aa" args="()" --><p>
356<table class="mdTable" cellpadding="2" cellspacing="0">
357  <tr>
358    <td class="mdRow">
359      <table cellpadding="0" cellspacing="0" border="0">
360        <tr>
361          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect.html">FCDEffect</a>* FCDMaterial::GetEffect           </td>
362          <td class="md" valign="top">(&nbsp;</td>
363          <td class="mdname1" valign="top" nowrap>          </td>
364          <td class="md" valign="top">&nbsp;)&nbsp;</td>
365          <td class="md" nowrap><code> [inline]</code></td>
366        </tr>
367      </table>
368    </td>
369  </tr>
370</table>
371<table cellspacing="5" cellpadding="0" border="0">
372  <tr>
373    <td>
374      &nbsp;
375    </td>
376    <td>
377
378<p>
379Retrieves the effect instantiated for this material.
380<p>
381The parameters of the effect may be overwritten by this material. You should either flatten the material using the FlattenMaterial function or verify the parameter values manually using the parameter list accessors. <dl compact><dt><b>Returns:</b></dt><dd>The instantiated effect. This pointer will be NULL if the material has no rendering. </dd></dl>
382    </td>
383  </tr>
384</table>
385<a class="anchor" name="b9a0478b8882ab2c52f80ce7f1989ba9"></a><!-- doxytag: member="FCDMaterial::GetParameters" ref="b9a0478b8882ab2c52f80ce7f1989ba9" args="()" --><p>
386<table class="mdTable" cellpadding="2" cellspacing="0">
387  <tr>
388    <td class="mdRow">
389      <table cellpadding="0" cellspacing="0" border="0">
390        <tr>
391          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect_parameter_list.html">FCDEffectParameterList</a>* FCDMaterial::GetParameters           </td>
392          <td class="md" valign="top">(&nbsp;</td>
393          <td class="mdname1" valign="top" nowrap>          </td>
394          <td class="md" valign="top">&nbsp;)&nbsp;</td>
395          <td class="md" nowrap><code> [inline]</code></td>
396        </tr>
397      </table>
398    </td>
399  </tr>
400</table>
401<table cellspacing="5" cellpadding="0" border="0">
402  <tr>
403    <td>
404      &nbsp;
405    </td>
406    <td>
407
408<p>
409Retrieves the list of effect parameter overrides.
410<p>
411<dl compact><dt><b>Returns:</b></dt><dd>The list of effect parameter overrides. </dd></dl>
412    </td>
413  </tr>
414</table>
415<a class="anchor" name="3447a9b64d3e2c9f3d11580481eed937"></a><!-- doxytag: member="FCDMaterial::GetTechniqueHints" ref="3447a9b64d3e2c9f3d11580481eed937" args="()" --><p>
416<table class="mdTable" cellpadding="2" cellspacing="0">
417  <tr>
418    <td class="mdRow">
419      <table cellpadding="0" cellspacing="0" border="0">
420        <tr>
421          <td class="md" nowrap valign="top"><a class="el" href="classvector.html">FCDMaterialTechniqueHintList</a>&amp; FCDMaterial::GetTechniqueHints           </td>
422          <td class="md" valign="top">(&nbsp;</td>
423          <td class="mdname1" valign="top" nowrap>          </td>
424          <td class="md" valign="top">&nbsp;)&nbsp;</td>
425          <td class="md" nowrap><code> [inline]</code></td>
426        </tr>
427      </table>
428    </td>
429  </tr>
430</table>
431<table cellspacing="5" cellpadding="0" border="0">
432  <tr>
433    <td>
434      &nbsp;
435    </td>
436    <td>
437
438<p>
439Retrieves the list of the material platform-technique hints.
440<p>
441<dl compact><dt><b>Returns:</b></dt><dd>The list of material platform-technique hints. </dd></dl>
442    </td>
443  </tr>
444</table>
445<a class="anchor" name="eeaf2e7f96a1b3efc7daac490b1e5e8f"></a><!-- doxytag: member="FCDMaterial::GetType" ref="eeaf2e7f96a1b3efc7daac490b1e5e8f" args="() const " --><p>
446<table class="mdTable" cellpadding="2" cellspacing="0">
447  <tr>
448    <td class="mdRow">
449      <table cellpadding="0" cellspacing="0" border="0">
450        <tr>
451          <td class="md" nowrap valign="top">virtual <a class="el" href="class_f_c_d_entity.html#9301a4bd5f4d4190ec13e40db4effdd7">Type</a> FCDMaterial::GetType           </td>
452          <td class="md" valign="top">(&nbsp;</td>
453          <td class="mdname1" valign="top" nowrap>          </td>
454          <td class="md" valign="top">&nbsp;)&nbsp;</td>
455          <td class="md" nowrap> const<code> [inline, virtual]</code></td>
456        </tr>
457      </table>
458    </td>
459  </tr>
460</table>
461<table cellspacing="5" cellpadding="0" border="0">
462  <tr>
463    <td>
464      &nbsp;
465    </td>
466    <td>
467
468<p>
469Retrieves the entity type for this class.
470<p>
471This function is part of the <a class="el" href="class_f_c_d_entity.html">FCDEntity</a> class interface. <dl compact><dt><b>Returns:</b></dt><dd>The entity type: MATERIAL. </dd></dl>
472
473<p>
474Reimplemented from <a class="el" href="class_f_c_d_entity.html#bfd4312a7124f92364c1e6517c7e60ba">FCDEntity</a>.    </td>
475  </tr>
476</table>
477<a class="anchor" name="9c14aec6b095e0a263635a41f037f331"></a><!-- doxytag: member="FCDMaterial::LoadFromXML" ref="9c14aec6b095e0a263635a41f037f331" args="(xmlNode *materialNode)" --><p>
478<table class="mdTable" cellpadding="2" cellspacing="0">
479  <tr>
480    <td class="mdRow">
481      <table cellpadding="0" cellspacing="0" border="0">
482        <tr>
483          <td class="md" nowrap valign="top">virtual <a class="el" href="class_f_u_status.html">FUStatus</a> FCDMaterial::LoadFromXML           </td>
484          <td class="md" valign="top">(&nbsp;</td>
485          <td class="md" nowrap valign="top">xmlNode *&nbsp;</td>
486          <td class="mdname1" valign="top" nowrap> <em>materialNode</em>          </td>
487          <td class="md" valign="top">&nbsp;)&nbsp;</td>
488          <td class="md" nowrap><code> [virtual]</code></td>
489        </tr>
490      </table>
491    </td>
492  </tr>
493</table>
494<table cellspacing="5" cellpadding="0" border="0">
495  <tr>
496    <td>
497      &nbsp;
498    </td>
499    <td>
500
501<p>
502[INTERNAL] Reads in the &lt;material&gt; element from a given COLLADA XML tree node.
503<p>
504<dl compact><dt><b>Parameters:</b></dt><dd>
505  <table border="0" cellspacing="2" cellpadding="0">
506    <tr><td valign="top"></td><td valign="top"><em>materialNode</em>&nbsp;</td><td>The COLLADA XML tree node. </td></tr>
507  </table>
508</dl>
509<dl compact><dt><b>Returns:</b></dt><dd>The status of the import. If the status is not successful, it may be dangerous to extract information from the material. </dd></dl>
510
511<p>
512Reimplemented from <a class="el" href="class_f_c_d_entity.html#8e32fcc93de76acc4b606db7b5b83890">FCDEntity</a>.    </td>
513  </tr>
514</table>
515<a class="anchor" name="f5a95739d8051b054f982f562887dbf4"></a><!-- doxytag: member="FCDMaterial::SetEffect" ref="f5a95739d8051b054f982f562887dbf4" args="(FCDEffect *_effect)" --><p>
516<table class="mdTable" cellpadding="2" cellspacing="0">
517  <tr>
518    <td class="mdRow">
519      <table cellpadding="0" cellspacing="0" border="0">
520        <tr>
521          <td class="md" nowrap valign="top">void FCDMaterial::SetEffect           </td>
522          <td class="md" valign="top">(&nbsp;</td>
523          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect.html">FCDEffect</a> *&nbsp;</td>
524          <td class="mdname1" valign="top" nowrap> <em>_effect</em>          </td>
525          <td class="md" valign="top">&nbsp;)&nbsp;</td>
526          <td class="md" nowrap><code> [inline]</code></td>
527        </tr>
528      </table>
529    </td>
530  </tr>
531</table>
532<table cellspacing="5" cellpadding="0" border="0">
533  <tr>
534    <td>
535      &nbsp;
536    </td>
537    <td>
538
539<p>
540Sets the effect instantiated for this material.
541<p>
542<dl compact><dt><b>Parameters:</b></dt><dd>
543  <table border="0" cellspacing="2" cellpadding="0">
544    <tr><td valign="top"></td><td valign="top"><em>_effect</em>&nbsp;</td><td>The effect instantiated for this material. </td></tr>
545  </table>
546</dl>
547    </td>
548  </tr>
549</table>
550<a class="anchor" name="6a7dd4f4a4d3b422f4177cf0a531014c"></a><!-- doxytag: member="FCDMaterial::WriteToXML" ref="6a7dd4f4a4d3b422f4177cf0a531014c" args="(xmlNode *parentNode) const " --><p>
551<table class="mdTable" cellpadding="2" cellspacing="0">
552  <tr>
553    <td class="mdRow">
554      <table cellpadding="0" cellspacing="0" border="0">
555        <tr>
556          <td class="md" nowrap valign="top">virtual xmlNode* FCDMaterial::WriteToXML           </td>
557          <td class="md" valign="top">(&nbsp;</td>
558          <td class="md" nowrap valign="top">xmlNode *&nbsp;</td>
559          <td class="mdname1" valign="top" nowrap> <em>parentNode</em>          </td>
560          <td class="md" valign="top">&nbsp;)&nbsp;</td>
561          <td class="md" nowrap> const<code> [virtual]</code></td>
562        </tr>
563      </table>
564    </td>
565  </tr>
566</table>
567<table cellspacing="5" cellpadding="0" border="0">
568  <tr>
569    <td>
570      &nbsp;
571    </td>
572    <td>
573
574<p>
575[INTERNAL] Writes out the &lt;material&gt; element to the given COLLADA XML tree node.
576<p>
577<dl compact><dt><b>Parameters:</b></dt><dd>
578  <table border="0" cellspacing="2" cellpadding="0">
579    <tr><td valign="top"></td><td valign="top"><em>parentNode</em>&nbsp;</td><td>The COLLADA XML parent node in which to insert the material declaration. </td></tr>
580  </table>
581</dl>
582<dl compact><dt><b>Returns:</b></dt><dd>The created element XML tree node. </dd></dl>
583
584<p>
585Reimplemented from <a class="el" href="class_f_c_d_entity.html#b27f0c175c3f8fd7064cde48bcf1d7a0">FCDEntity</a>.    </td>
586  </tr>
587</table>
588<hr>The documentation for this class was generated from the following file:<ul>
589<li>FCDocument/<a class="el" href="_f_c_d_material_8h-source.html">FCDMaterial.h</a></ul>
590<hr size="1"><address style="align: right;"><small>Generated on Fri May 12 16:44:43 2006 for FCollada by&nbsp;
591<a href="http://www.doxygen.org/index.html">
592<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6-NO </small></address>
593</body>
594</html>
Note: See TracBrowser for help on using the repository browser.