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>Basic Features</title>
8  </head>
9  <body>
10    <h1>Basic Features</h1>
11
12    <h2 id="play">Animation Playback</h2>
13    <div class="section">
14      <p>The following is a simple procedure for playing back an animation.</p>
15      <p class="info">For details, see AnimationDemo.</p>
16      <ol>
17        <li>Gets the animation group.
18          <ul>
19            <li><a href="../../../nw/gfx/Model/GetVisibilityAnimGroup.html">Model::GetVisibilityAnimGroup</a> (Example)</li>
20          </ul>
21          <p class="annotation">The functions used differ depending on the animation target and type.</p>
22          <ul>
23            <li><a href="../../../nw/gfx/SkeletalModel/GetSkeletalAnimGroup.html">SkeletalModel::GetSkeletalAnimGroup</a></li>
24            <li><a href="../../../nw/gfx/Model/GetVisibilityAnimGroup.html">Model::GetVisibilityAnimGroup</a></li>
25            <li><a href="../../../nw/gfx/Model/GetMaterialAnimGroup.html">Model::GetMaterialAnimGroup</a></li>
26            <li><a href="../../../nw/gfx/Light/GetAnimGroup.html">Light::GetAnimGroup</a></li>
27            <li><a href="../../../nw/gfx/Camera/GetAnimGroup.html">Camera::GetAnimGroup</a></li>
28          </ul>
29        </li>
30
31        <li>Create an instance for animation evaluation.
32          <ul>
33            <li><a href="../../../nw/gfx/AnimEvaluator/Builder/Overview.html">AnimEvaluator::Builder</a></li>
34          </ul>
35          <p class="annotation">Use <a href="../../../nw/gfx/TransformAnimEvaluator/Builder/Overview.html">TransformAnimEvaluator::Builder</a> for skeletal animations.</p>
36        </li>
37
38        <li>Bind an animation loop to the created animation evaluation instance.
39          <ul>
40            <li><a href="../../../nw/gfx/AnimObject/Bind.html">AnimObject::Bind</a></li>
41          </ul>
42        </li>
43
44        <li>Register the animation evaluation with the model.
45          <ul>
46            <li><a href="../../../nw/gfx/Model/SetVisibilityAnimObject.html">Model::SetVisibilityAnimObject</a> (Example)</li>
47          </ul>
48          <p class="annotation">The functions used differ depending on the animation target and type.</p>
49          <ul>
50            <li><a href="../../../nw/gfx/SkeletalModel/SetSkeletalAnimObject.html">SkeletalModel::SetSkeletalAnimObject</a></li>
51            <li><a href="../../../nw/gfx/Model/SetVisibilityAnimObject.html">Model::SetVisibilityAnimObject</a></li>
52            <li><a href="../../../nw/gfx/Model/SetMaterialAnimObject.html">Model::SetMaterialAnimObject</a></li>
53            <li><a href="../../../nw/gfx/Light/SetAnimObject.html">Light::SetAnimObject</a></li>
54            <li><a href="../../../nw/gfx/Camera/SetAnimObject.html">Camera::SetAnimObject</a></li>
55          </ul>
56          <p class="annotation">Pass AnimEvaluator just created in the argument AnimObject.<br /> Pass other derived classes if subsequent blending or other such processing is going to be performed.
57          </p>
58        </li>
59
60        <li>Update the scene each frame.
61          <ul>
62            <li><a href="../../../nw/gfx/SceneUpdater/UpdateAll.html">SceneUpdater::UpdateAll</a></li>
63          </ul>
64        </li>
65      </ol>
66    </div>
67
68    <h2 id="change_anim">Switching the Playback Animation</h2>
69    <div class="section">
70        <p>This section describes how to play another animation for a target for which an animation is already playing.</p>
71        <ul>
72          <li><a href="../../../nw/gfx/BaseAnimEvaluator/ChangeAnim.html">BaseAnimEvaluator::ChangeAnim</a></li>
73        </ul>
74        <p class="annotation">Switching animations is faster than re-creating an instance for evaluation.</p>
75    </div>
76
77    <h2 id="frame_control">Frame Control</h2>
78    <div class="section">
79      <p>This section describes how to control the playback frame of an animation from your program.</p>
80      <ul>
81        <li>To set a particular frame:
82          <ul>
83            <li><a href="../../../nw/gfx/BaseAnimEvaluator/SetFrame.html">BaseAnimEvaluator::SetFrame</a></li>
84          </ul>
85        </li>
86
87        <li>To change the update interval of an animation:
88          <ul>
89            <li><a href="../../../nw/gfx/BaseAnimEvaluator/SetStepFrame.html">BaseAnimEvaluator::SetStepFrame</a></li>
90          </ul>
91        </li>
92
93        <li>To set or cancel a loop:
94          <ul>
95            <li><a href="../../../nw/gfx/BaseAnimEvaluator/SetPlayPolicy.html">BaseAnimEvaluator::SetPlayPolicy</a></li>
96          </ul>
97        </li>
98      </ul>
99    </div>
100
101    <h2 id="reset">Animation Reset</h2>
102    <div class="section">
103      <p>This section describes how to restore status immediately after loading a model or other object.</p>
104      <ul>
105        <li><a href="../../../nw/gfx/BaseAnimEvaluator/Reset.html">BaseAnimEvaluator::Reset</a></li>
106      </ul>
107      <p class="annotation">To perform this operation on a material, a material buffer must be ready.<br /> For details, see <a href="CRYPTORSASignInitParam.html"><CODE>BaseAnimEvaluator::Reset</CODE></a>.</p>
108    </div>
109
110    <h2 id="blend">Animation Blend</h2>
111    <div class="section">
112      <p>This section describes how to blend two or more animations with the same target.<br /> In the AnimationBlendDemo, a walking animation and running animation are blended.</p>
113      <p class="info">For details, see AnimationBlendDemo.</p>
114      <ol>
115        <li>Prepare two or more instances of <a href="../../../nw/gfx/AnimEvaluator/Overview.html">AnimEvaluator</a>.
116          <p class="annotation">For details on creating an instance of AnimEvaluator, see <a href="#play">Animation Playback</a>.</p>
117        </li>
118        <li>Create an instance of <a href="../../../nw/gfx/AnimInterpolator/Overview.html">AnimInterpolator</a> having the required size and register AnimEvaluator.
119          <ul>
120            <li><a href="../../../nw/gfx/AnimInterpolator/Builder/Overview.html">AnimInterpolator::Builder</a></li>
121            <li><a href="../../../nw/gfx/AnimBlender/AddAnimObject.html">AnimBlender::AddAnimObject</a></li>
122          </ul>
123          <p class="annotation">In this example, the AnimObject to be registered is AnimEvaluator.</p>
124        </li>
125      </ol>
126      <p class="annotation">
127      You can also blend AnimBlender using AnimBlender.<br /> You can also overwrite animations. For details, click <a href="AdvancedFeature.html#partial_anim">Partial Animation</a>.
128      </p>
129    </div>
130  <hr><p>CONFIDENTIAL</p></body>
131</html>
132