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">
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/document.css" type="text/css" />
7    <title>Graphix Library (gfx) Sample Demos</title>
8  </head>
9  <body>
10    <h1>MultiInstanceDemo</h1>
11
12      <div class="section"><img src="images/MultiInstanceDemo.png" border="0" width="400" height="240" /></div>
13
14      <h2>Overview</h2>
15      <p>
16        This demo copies and displays a model instance of the skeletal model. This demo also shows how to share materials and skeletons and copy skeletal models.
17      </p>
18
19      <h2>How to Use</h2>
20      <p>
21        <ul>
22          <li>Demo-specific operations</li>
23          <ul>
24            <li>L Button: Add a model</li>
25            <li>+Control pad Up + L Button: Add a model that shares a skeleton</li>
26            <li>R Button: Delete the last model added</li>
27          </ul>
28          <li>Common Operations</li>
29          <ul>
30            <li>Slide pad: Rotate the camera</li>
31            <li>Slide pad + A Button: Move the camera back and forth</li>
32            <li>Slide pad + B Button: Move the camera in parallel</li>
33            <li>Slide pad + Y Button: Move the camera up and down</li>
34            <li>X Button: Reset the camera position</li>
35            <li>START Button: Restart the demo.</li>
36          </ul>
37        </ul>
38      </p>
39
40      <h2>Description</h2>
41      <p>
42        To copy an object, pass the resource to a builder just as when creating an object. This demo gets the resource of a skeletal model using <a href="../../../nw/gfx/SkeletalModel/GetResSkeletalModel.html">GetResSkeletalModel</a>, and then creates a new skeletal model by passing the resource as an argument to <a href="../../../nw/gfx/SkeletalModel/Builder/Create.html">Create</a> of <a href="../../../nw/gfx/SkeletalModel/Builder/Overview.html">SkeletalModel::Builder</a>.
43      </p>
44      <p>
45        Here, a skeletal model that shares the skeleton can be created by passing an instance of the skeleton to <a href="../../../nw/gfx/SkeletalModel/Builder/SharedSkeleton.html">SharedSkeleton</a>. For details, see <a href="../Coordinate.html#shared_skeleton">Sharing Skeletons</a> and <a href="../anim/AdvancedFeature.html#multimodel_anim">High-Speed Features</a>.
46      </p>
47      <p>
48        Also, you can create a model that shares the material of this model by passing an instance of the model to <a href="../../../nw/gfx/SkeletalModel/Builder/SharedMaterialModel.html">SharedMaterialModel</a>.
49      </p>
50      <p>
51        In this demo, nodes are added and/or deleted at times other than initialization. When the tree structure is changed using <a href="../../../nw/gfx/SceneNode/AttachChild.html">AttachChild</a> or some other function, the scene tree must be initialized and traversed again. In the demo library, traverse is executed by calling <a href="../../../nw/demo/SceneSystem/TraverseScene.html">TraverseScene</a>. For details, see <a href="../ProcessFlow.html">Update Sequence</a> and <a href="../Optimization.html#traverse">Execute traverse only when the scene tree structure has changed</a>.
52      </p>
53
54  <hr><p>CONFIDENTIAL</p></body>
55</html>
56
57