Freigeben über


Hinzufügen von Frames und Animationen (Direct3D 9)

In diesem Abschnitt wird gezeigt, wie Sie einem einfachen Cube Frames und Animationen hinzufügen.

Arbeiten mit Frames

Es wird erwartet, dass ein Frame die folgende Struktur übernimmt.

Frame Aframe {        // The frame name is chosen for convenience.
FrameTransformMatrix {
...transform data...
}
[ Meshes ] and/or [ More frames]
}

Platzieren Sie das definierte Würfelgitter in einem Frame mit einer Identitätstransformation. Wenden Sie dann eine Animation auf diesen Frame an.

Frame CubeFrame {
FrameTransformMatrix {
1.000000, 0.000000, 0.000000, 0.000000,
0.000000, 1.000000, 0.000000, 0.000000,
0.000000, 0.000000, 1.000000, 0.000000,
0.000000, 0.000000, 0.000000, 1.000000;;
}
{CubeMesh}        // You could have the mesh inline, but this 
                  // uses an object reference instead.
}

Arbeiten mit Animationen

Eine Animation wird durch eine Reihe von Tasten definiert. Ein Schlüssel ist ein Zeitwert, der einem Skalierungsvorgang, einer Ausrichtung oder einer Position zugeordnet ist.

Animation Animation0 {        // The name is chosen for convenience.
{ Frame that it applies to - normally a reference }
AnimationKey {
...animation key data...
}
{ ...more animation keys... }
}

Animationen werden dann in AnimationSets gruppiert:

AnimationSet AnimationSet0 { // The name is chosen for convenience.
{ an animation - could be inline or a reference }
{ ... more animations ... } 
} 

Nehmen Sie nun den Würfel durch eine Animation.

AnimationSet AnimationSet0 {
Animation Animation0 {
{CubeFrame}    // Use the frame containing the cube.
AnimationKey {
2;             // Position keys
9;             // 9 keys
10; 3; -100.000000, 0.000000, 0.000000;;,
20; 3; -75.000000, 0.000000, 0.000000;;,
30; 3; -50.000000, 0.000000, 0.000000;;,
40; 3; -25.500000, 0.000000, 0.000000;;,
50; 3; 0.000000, 0.000000, 0.000000;;,
60; 3; 25.500000, 0.000000, 0.000000;;,
70; 3; 50.000000, 0.000000, 0.000000;;,
80; 3; 75.500000, 0.000000, 0.000000;;,
90; 3; 100.000000, 0.000000, 0.000000;;;
}
}
}

Weitere Informationen finden Sie in den Vorlagen "Animation " und " AnimationSet ".

X-Dateien (Legacy)