1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 5 <meta http-equiv="Content-Style-Type" content="text/css" /> 6 <link rel="stylesheet" href="../../../css/manpage.css" type="text/css" /> 7 <style type="text/css"><!-- 8 span.static_style 9 { 10 font-size : 8pt; 11 color : white; 12 font-weight : bold; 13 background : #44f; 14 border-left : solid 1px #aaf; 15 border-top : solid 1px #aaf; 16 border-right : solid 1px #00c; 17 border-bottom : solid 1px #00c; 18 padding-left : 2px; 19 padding-right : 2px; 20 } 21 span.virtual_style 22 { 23 font-size : 8pt; 24 color : white; 25 font-weight : bold; 26 background : #0a0; 27 border-left : solid 1px #0f0; 28 border-top : solid 1px #0f0; 29 border-right : solid 1px #060; 30 border-bottom : solid 1px #060; 31 padding-left : 2px; 32 padding-right : 2px; 33 } 34 span.protected_style 35 { 36 font-size : 8pt; 37 color : white; 38 font-weight : bold; 39 background : #444; 40 border-left : solid 1px #ccc; 41 border-top : solid 1px #ccc; 42 border-right : solid 1px #222; 43 border-bottom : solid 1px #222; 44 padding-left : 2px; 45 padding-right : 2px; 46 } 47 --></style> 48 <title>nw::gfx::SceneNode</title> 49 </head> 50 <body> 51 <h1><a href="../../../nw/Overview.html">nw</a>::<a href="../../../nw/gfx/Overview.html">gfx</a>::SceneNode Class</h1> 52 <h2>Syntax</h2> 53 <div class="section"> 54 <pre class="definition">class SceneNode : public <a href="../../../nw/gfx/SceneObject/Overview.html">nw::gfx::SceneObject</a></pre> 55 </div> 56 <h2>Description</h2> 57 <div class="section"> 58 <p>Class acting as the type of node from which the scene tree is built. Can have multiple children.</p> 59 </div> 60 <a name="class" id="class"> 61 <h2>Classes</h2> 62 <div class="section"> 63 <table class="members"> 64 <tr> 65 <th> 66 <a href="../../../nw/gfx/SceneNode/DynamicBuilder/Overview.html"><CODE>nw::gfx::SceneNode::DynamicBuilder</CODE></a> 67 </th> 68 <td>Class for building scene nodes dynamically.</td> 69 </tr> </table> 70 </div> 71 </a> <a name="struct" id="struct"> 72 <h2>Structures</h2> 73 <div class="section"> 74 <table class="members"> 75 <tr> 76 <th> 77 <a href="../../../nw/gfx/SceneNode/Description/Overview.html"><CODE>nw::gfx::SceneNode::Description</CODE></a> 78 </th> 79 <td>Content to configure.</td> 80 </tr> </table> 81 </div> 82 </a> <a name="enum" id="enum"> 83 <h2>Enumerated Types</h2> 84 <div class="section"> 85 <table class="members"> 86 <tr> 87 <td width="100"> </td> 88 <th> 89 <a href="../../../nw/gfx/SceneNode/TraversalResults.html"><CODE>TraversalResults</CODE></a> 90 </th> 91 <td>Definition of the bit flag indicating the traversal results.</td> 92 </tr> </table> 93 </div> 94 </a> <a name="typedef" id="typedef"> 95 <h2><CODE>typedef</CODE> Definitions</h2> 96 <div class="section"> 97 <table class="members"> 98 <tr> 99 <td width="100" /> 100 <th> 101 <a href="../../../nw/gfx/SceneNode/UpdateSignal.html"><CODE>UpdateSignal</CODE></a> 102 </th> 103 <td>Definition of a callback signal that is called during updates.</td> 104 </tr> 105 <tr> 106 <td width="100" /> 107 <th> 108 <a href="../../../nw/gfx/SceneNode/UpdateSlot.html"><CODE>UpdateSlot</CODE></a> 109 </th> 110 <td>Definition of a callback slot that is called during updates.</td> 111 </tr> </table> 112 </div> 113 </a> <a name="constant" id="constant"> 114 <h2>Member Constants</h2> 115 <div class="section"> 116 <table class="members"> 117 <tr> 118 <td width="100"> 119 <span class="static_style" title="static">S</span> 120 </td> 121 <th> 122 <span class="argument"><a href="../../../nw/gfx/SceneObject/DEFAULT_MAX_CHILDREN.html"><CODE>DEFAULT_MAX_CHILDREN</CODE></a></span> 123 </th> 124 <td width="100"><CODE>const int</CODE></td> 125 <td>Maximum number of children when a fixed amount of memory is used.(Derived from <a href="../../../nw/gfx/SceneObject/Overview.html"><CODE>SceneObject</CODE></a>.)</td> 126 </tr> 127 <tr> 128 <td width="100"> 129 <span class="static_style" title="static">S</span> 130 </td> 131 <th> 132 <span class="argument"><a href="../../../nw/gfx/SceneObject/DEFAULT_MAX_CALLBACKS.html"><CODE>DEFAULT_MAX_CALLBACKS</CODE></a></span> 133 </th> 134 <td width="100"><CODE>const int</CODE></td> 135 <td>Maximum number of callbacks when a fixed amount of memory is used.(Derived from <a href="../../../nw/gfx/SceneObject/Overview.html"><CODE>SceneObject</CODE></a>.)</td> 136 </tr> 137 <tr> 138 <td width="100"> 139 <span class="static_style" title="static">S</span> 140 </td> 141 <th> 142 <span class="argument"><a href="../../../nw/gfx/SceneObject/MAX_NAME_LENGTH.html"><CODE>MAX_NAME_LENGTH</CODE></a></span> 143 </th> 144 <td width="100"><CODE>const int</CODE></td> 145 <td>Limit on names of scene objects.(Derived from <a href="../../../nw/gfx/SceneObject/Overview.html"><CODE>SceneObject</CODE></a>.)</td> 146 </tr> </table> 147 </div> 148 </a> <a name="variable" id="variable"> 149 <h2>Member Variables</h2> 150 <div class="section"> 151 <table class="members"> 152 <tr> 153 <td width="100"> </td> 154 <th> 155 <span class="argument"><CODE>NW_UT_RUNTIME_TYPEINFO</CODE></span> 156 </th> 157 <td width="100" /> 158 <td> 159 </td> 160 </tr> 161 <tr> 162 <td width="100"> 163 <span class="protected_style" title="protected">protected</span> </td> 164 <th> 165 <span class="argument">m_Children</span> 166 </th> 167 <td width="100"><a href="../../../nw/ut/Children/Overview.html"><CODE>SceneNodeChildren</CODE></a></td> 168 <td>Child nodes.</td> 169 </tr> 170 <tr> 171 <td width="100"> 172 <span class="protected_style" title="protected">protected</span> </td> 173 <th> 174 <span class="argument">m_AnimBinding</span> 175 </th> 176 <td width="100"><CODE><a href="../../../nw/gfx/GfxPtr/Overview.html">GfxPtr</a>< <a href="../../../nw/gfx/AnimBinding/Overview.html">AnimBinding</a> ></CODE></td> 177 <td>Animation binding.</td> 178 </tr> 179 <tr> 180 <td width="100"> 181 <span class="protected_style" title="protected">protected</span> </td> 182 <th> 183 <span class="argument">m_BranchVisible</span> 184 </th> 185 <td width="100">bool</td> 186 <td>Visibility of a branch and descendants.</td> 187 </tr> </table> 188 </div> 189 </a> <a name="function" id="function"> 190 <h2>Member Functions</h2> 191 <div class="section"> 192 <table class="members"> 193 <tr> 194 <th class="category" colspan="3">Create/Destroy</th> 195 </tr> 196 <tr> 197 <td width="100"> 198 <span class="static_style" title="static">S</span> </td> 199 <th> 200 <a href="../../../nw/gfx/SceneNode/Create.html"><CODE>Create</CODE></a> 201 </th> 202 <td>Generates a scene node.</td> 203 </tr> 204 <tr> 205 <td width="100"> 206 <span class="static_style" title="static">S</span> </td> 207 <th> 208 <a href="../../../nw/gfx/SceneNode/GetMemorySize.html"><CODE>GetMemorySize</CODE></a> 209 </th> 210 <td>Gets the memory size required at time of creation.</td> 211 </tr> 212 <tr> 213 <td width="100"> </td> 214 <th> 215 <a href="../../../nw/gfx/SceneNode/DestroyBranch.html"><CODE>DestroyBranch</CODE></a> 216 </th> 217 <td>Destroys all nodes on the current branch, including the current node.</td> 218 </tr> 219 <tr> 220 <td width="100"> </td> 221 <th> 222 <a href="../../../nw/gfx/GfxObject/Destroy.html"><CODE>Destroy</CODE></a> 223 </th> 224 <td>Destroys an object.(Derived from <a href="../../../nw/gfx/GfxObject/Overview.html"><CODE>GfxObject</CODE></a>.)</td> 225 </tr> 226 <tr> 227 <th class="category" colspan="3">Resources</th> 228 </tr> 229 <tr> 230 <td width="100"> </td> 231 <th> 232 <a href="../../../nw/gfx/SceneNode/GetResSceneNode.html"><CODE>GetResSceneNode</CODE></a> 233 </th> 234 <td>Gets the scene node resource.</td> 235 </tr> 236 <tr> 237 <td width="100"> </td> 238 <th> 239 <a href="../../../nw/gfx/SceneObject/GetResSceneObject.html"><CODE>GetResSceneObject</CODE></a> 240 </th> 241 <td>Gets the scene object resource.(Derived from <a href="../../../nw/gfx/SceneObject/Overview.html"><CODE>SceneObject</CODE></a>.)</td> 242 </tr> 243 <tr> 244 <td width="100"> </td> 245 <th> 246 <a href="../../../nw/gfx/SceneObject/GetName.html"><CODE>GetName</CODE></a> 247 </th> 248 <td>Gets the name from the resource.(Derived from <a href="../../../nw/gfx/SceneObject/Overview.html"><CODE>SceneObject</CODE></a>.)</td> 249 </tr> 250 <tr> 251 <th class="category" colspan="3">Transforms</th> 252 </tr> 253 <tr> 254 <td width="100"> <span class="virtual_style" title="virtual">V</span> 255 </td> 256 <th> 257 <a href="../../../nw/gfx/SceneNode/UpdateTransform.html"><CODE>UpdateTransform</CODE></a> 258 </th> 259 <td>Updates transform information.</td> 260 </tr> 261 <tr> 262 <th class="category" colspan="3">Scene Trees</th> 263 </tr> 264 <tr> 265 <td width="100"> </td> 266 <th> 267 <a href="../../../nw/gfx/SceneNode/AttachChild.html"><CODE>AttachChild</CODE></a> 268 </th> 269 <td>Attaches a child.</td> 270 </tr> 271 <tr> 272 <td width="100"> </td> 273 <th> 274 <a href="../../../nw/gfx/SceneNode/DetachChild.html"><CODE>DetachChild</CODE></a> 275 </th> 276 <td>Removes a child.</td> 277 </tr> 278 <tr> 279 <td width="100"> </td> 280 <th> 281 <a href="../../../nw/gfx/SceneNode/GetChildBegin.html"><CODE>GetChildBegin</CODE></a> 282 </th> 283 <td>Gets the beginning of a child.</td> 284 </tr> 285 <tr> 286 <td width="100"> </td> 287 <th> 288 <a href="../../../nw/gfx/SceneNode/GetChildEnd.html"><CODE>GetChildEnd</CODE></a> 289 </th> 290 <td>Gets the end of a child.</td> 291 </tr> 292 <tr> 293 <td width="100"> </td> 294 <th> 295 <a href="../../../nw/gfx/SceneNode/DetachAllChildren.html"><CODE>DetachAllChildren</CODE></a> 296 </th> 297 <td>Removes all children.</td> 298 </tr> 299 <tr> 300 <td width="100"> <span class="virtual_style" title="virtual">V</span> 301 </td> 302 <th> 303 <a href="../../../nw/gfx/SceneNode/Accept.html"><CODE>Accept</CODE></a> 304 </th> 305 <td>Accepts visitors.</td> 306 </tr> 307 <tr> 308 <td width="100"> <span class="virtual_style" title="virtual">V</span> 309 </td> 310 <th> 311 <a href="../../../nw/gfx/SceneNode/TrackbackWorldMatrix.html"><CODE>TrackbackWorldMatrix</CODE></a> 312 </th> 313 <td>Tracks back to the parent node and gets the world matrix.</td> 314 </tr> 315 <tr> 316 <td width="100"> <span class="virtual_style" title="virtual">V</span> 317 </td> 318 <th> 319 <a href="../../../nw/gfx/SceneNode/TrackbackWorldTransform.html"><CODE>TrackbackWorldTransform</CODE></a> 320 </th> 321 <td>Tracks back to the parent node and gets the world transform.</td> 322 </tr> 323 <tr> 324 <td width="100"> <span class="virtual_style" title="virtual">V</span> 325 </td> 326 <th> 327 <a href="../../../nw/gfx/SceneNode/TrackbackLocalTransform.html"><CODE>TrackbackLocalTransform</CODE></a> 328 </th> 329 <td>Tracks back to the parent node and gets the local transform.</td> 330 </tr> 331 <tr> 332 <th class="category" colspan="3">Callbacks</th> 333 </tr> 334 <tr> 335 <td width="100"> </td> 336 <th> 337 <a href="../../../nw/gfx/SceneNode/PreUpdateSignal.html"><CODE>PreUpdateSignal</CODE></a> 338 </th> 339 <td>Gets the signal before the scene node is updated.</td> 340 </tr> 341 <tr> 342 <th class="category" colspan="3">Animation</th> 343 </tr> 344 <tr> 345 <td width="100"> </td> 346 <th> 347 <a href="../../../nw/gfx/SceneNode/GetAnimBinding.html"><CODE>GetAnimBinding</CODE></a> 348 </th> 349 <td>Gets the animation binding.</td> 350 </tr> 351 <tr> 352 <td width="100"> </td> 353 <th> 354 <a href="../../../nw/gfx/SceneNode/SetAnimBinding.html"><CODE>SetAnimBinding</CODE></a> 355 </th> 356 <td>Sets the animation binding.</td> 357 </tr> 358 <tr> 359 <td width="100"> </td> 360 <th> 361 <a href="../../../nw/gfx/SceneNode/UpdateFrame.html">UpdateFrame</a> 362 </th> 363 <td>Updates the frames for all configured animation objects.</td> 364 </tr> 365 <tr> 366 <th class="category" colspan="3">Traverses</th> 367 </tr> 368 <tr> 369 <td width="100"> </td> 370 <th> 371 <a href="../../../nw/gfx/SceneNode/GetTraversalResults.html"><CODE>GetTraversalResults</CODE></a> 372 </th> 373 <td>Gets the results of a traversal.</td> 374 </tr> 375 <tr> 376 <td width="100"> </td> 377 <th> 378 <a href="../../../nw/gfx/SceneNode/SetTraversalResults.html"><CODE>SetTraversalResults</CODE></a> 379 </th> 380 <td>Sets the results of a traversal.</td> 381 </tr> 382 <tr> 383 <td width="100"> </td> 384 <th> 385 <a href="../../../nw/gfx/SceneNode/IsEnabledResults.html"><CODE>IsEnabledResults</CODE></a> 386 </th> 387 <td>Gets a value indicating whether a given traversal result is enabled.</td> 388 </tr> 389 <tr> 390 <td width="100"> </td> 391 <th> 392 <a href="../../../nw/gfx/SceneNode/EnableTraversalResults.html"><CODE>EnableTraversalResults</CODE></a> 393 </th> 394 <td>Enables the results of a traversal.</td> 395 </tr> 396 <tr> 397 <td width="100"> </td> 398 <th> 399 <a href="../../../nw/gfx/SceneNode/DisableTraversalResults.html"><CODE>DisableTraversalResults</CODE></a> 400 </th> 401 <td>Disables the results of a traversal.</td> 402 </tr> 403 <tr> 404 <td width="100"> </td> 405 <th> 406 <a href="../../../nw/gfx/SceneNode/ResetTraversalResults.html"><CODE>ResetTraversalResults</CODE></a> 407 </th> 408 <td>Copies the result of traversal from a node.</td> 409 </tr> 410 <tr> 411 <td width="100"> </td> 412 <th> 413 <a href="../../../nw/gfx/SceneNode/CopyTraversalResults.html"><CODE>CopyTraversalResults</CODE></a> 414 </th> 415 <td>Copies the result of traversal from a node.</td> 416 </tr> 417 <tr> 418 <td width="100"> <span class="virtual_style" title="virtual">V</span> 419 </td> 420 <th> 421 <a href="../../../nw/gfx/SceneNode/InheritTraversalResults.html"><CODE>InheritTraversalResults</CODE></a> 422 </th> 423 <td>Inherits conversion information from the parent node.</td> 424 </tr> 425 <tr> 426 <td width="100"> </td> 427 <th> 428 <a href="../../../nw/gfx/SceneNode/SetBranchVisible.html"><CODE>SetBranchVisible</CODE></a> 429 </th> 430 <td>Sets the flag used to render the node and descendants.</td> 431 </tr> 432 <tr> 433 <td width="100"> </td> 434 <th> 435 <a href="../../../nw/gfx/SceneNode/IsBranchVisible.html"><CODE>IsBranchVisible</CODE></a> 436 </th> 437 <td>Gets the flag used to render the node and descendants.</td> 438 </tr> 439 <tr> 440 <th class="category" colspan="3">Constructors and Destructors</th> 441 </tr> 442 <tr> 443 <td width="100"> 444 <span class="protected_style" title="protected">protected</span> </td> 445 <th> 446 <a href="../../../nw/gfx/SceneNode/SceneNode.html"><CODE>SceneNode</CODE></a> 447 </th> 448 <td>Constructor.</td> 449 </tr> 450 <tr> 451 <td width="100"> 452 <span class="protected_style" title="protected">protected</span> <span class="virtual_style" title="virtual">V</span> 453 </td> 454 <th> 455 <a href="../../../nw/gfx/SceneNode/~SceneNode.html"><CODE>~SceneNode</CODE></a> 456 </th> 457 <td>Destructor.</td> 458 </tr> 459 <tr> 460 <th class="category" colspan="3">Other</th> 461 </tr> 462 <tr> 463 <td width="100"> 464 <span class="protected_style" title="protected">protected</span> </td> 465 <th> 466 <a href="../../../nw/gfx/SceneNode/IsCircularReference.html"><CODE>IsCircularReference</CODE></a> 467 </th> 468 <td>Returns <CODE>true</CODE> if there is a circular reference.</td> 469 </tr> 470 <tr> 471 <td width="100"> 472 <span class="protected_style" title="protected">protected</span> </td> 473 <th> 474 <a href="../../../nw/gfx/SceneNode/AcceptChildren.html"><CODE>AcceptChildren</CODE></a> 475 </th> 476 <td>Makes all nodes accept visitors.</td> 477 </tr> 478 <tr> 479 <td width="100"> 480 <span class="protected_style" title="protected">protected</span> <span class="virtual_style" title="virtual">V</span> 481 </td> 482 <th> 483 <a href="../../../nw/gfx/SceneNode/Initialize.html"><CODE>Initialize</CODE></a> 484 </th> 485 <td>Allocates memory for and initializes members.</td> 486 </tr> </table> 487 </div> 488 </a> 489 <h2>Class Hierarchy</h2> 490 <div class="section"> 491 <p class="hierarchy"><a href="../../../nw/gfx/GfxObject/Overview.html">nw::gfx::GfxObject</a><br /> <a href="../../../nw/gfx/SceneObject/Overview.html">nw::gfx::SceneObject</a><br /> <b>nw::gfx::SceneNode</b> 492 </p> 493 </div> 494 <hr><p>CONFIDENTIAL</p></body> 495</html> 496