Freigeben über


Animieren eines Zeichens

[Der Microsoft-Agent ist ab Windows 7 veraltet und in nachfolgenden Versionen von Windows möglicherweise nicht verfügbar.]

Nachdem ein Zeichen geladen wurde, können Sie mehrere Methoden des Microsoft-Agents zum Animieren des Zeichens verwenden. Die erste, die Sie verwenden, ist in der Regel die Show-Methode . Show macht den Frame des Zeichens sichtbar und gibt die Animation wieder, die dem Anzeigezustand des Zeichens zugewiesen ist.

Sobald der Frame des Zeichens sichtbar ist, können Sie die Play-Methode verwenden, die den Namen einer Animation angibt, um diese Animation wiederzugeben. Animationsnamen sind spezifisch für eine Zeichendefinition. Wenn eine Animation wiedergegeben wird, ändert sich die Form des Fensters so, dass sie dem Bild im Frame entspricht. Dies führt zu einem verschiebbaren Grafikbild oder Sprite, das oben auf dem Desktop und allen Fenstern angezeigt wird, oder Z-Reihenfolge.

Wenn die Datei des Zeichens lokal gespeichert ist, können Sie einfach die Play-Methode aufrufen. In anderen Fällen, z. B. wenn Sie eine geladen haben. ACF-Zeichen von einem HTTP-Server. Sie müssen zuerst die Methode Get (oder Prepare) verwenden, um die Animationsdaten abzurufen. Dadurch fordert der Agent die Animationsdatei vom Server an und speichert sie im Puffer des Browsers auf dem lokalen Computer.

Mit der Speak-Methode können Sie das Sprechen des Zeichens programmieren und die Ausgabe automatisch mit den Lippen synchronisieren. Weitere Informationen finden Sie im Abschnitt Ausgabe dieses Dokuments.

Sie können die MoveTo-Methode verwenden, um das Zeichen an einer neuen Position zu positionieren. Wenn Sie die MoveTo-Methode aufrufen, spielt der Microsoft-Agent automatisch die entsprechende Animation basierend auf der aktuellen Position des Charakters und verschiebt dann den Frame des Zeichens. Analog dazu gibt der Microsoft-Agent beim Aufrufen von GestureAt die entsprechende Gestikanimation basierend auf der Position des Charakters und der im Anruf angegebenen Position wieder.

Um das Zeichen auszublenden, rufen Sie die Hide-Methode auf . Dadurch wird automatisch das Zeichen wiedergegeben, das dem Status "Ausblenden" des Zeichens zugeordnet ist, und dann wird der Frame des Zeichens ausgeblendet. Sie können ein Zeichen jedoch auch ausblenden oder anzeigen, indem Sie die Visible-Eigenschaft des Zeichens festlegen.

Der Microsoft-Agent verarbeitet alle Animationsaufrufe oder Anforderungen asynchron. Dadurch kann der Code Ihrer Anwendung die Verarbeitung anderer Ereignisse fortsetzen, während die Anforderung verarbeitet wird. Beispielsweise platzieren Aufrufe der Play-Methode die Animation in einer Warteschlange für das Zeichen, sodass die Animationen sequenziell wiedergegeben werden können. Dies bedeutet jedoch, dass Sie nicht davon ausgehen können, dass ein Aufruf anderer Funktionen notwendigerweise nach einer Animation ausgeführt wird, die im Code folgt. In der Regel wird beispielsweise eine Anweisung nach einem Aufruf von Play oder MoveTo ausgeführt, bevor die Animation abgeschlossen ist.

Sie können Ihren Code mit Animationen in der Warteschlange eines Zeichens synchronisieren, indem Sie einen Objektverweis auf die Animationsanforderung erstellen und, wenn die Animation gestartet oder abgeschlossen ist, die Anforderungsereignisse überwachen, die der Server verwendet, um Clients über das Zeichen zu benachrichtigen. Wenn beispielsweise ein Meldungsfeld angezeigt werden soll, wenn das Zeichen eine Animation abgeschlossen hat, können Sie den Meldungsfeldaufruf in Ihre RequestComplete-Ereignisbehandlungsunterroutine einfügen und nach der jeweiligen Anforderungs-ID suchen.

Wenn ein Zeichen ausgeblendet ist, gibt der Server keine Animationen wieder. Die Animationsanforderung wird jedoch weiterhin in die Warteschlange gestellt und verarbeitet (die Animation wird wiedergegeben) und eine Anforderung status an den Client übergeben. Im ausgeblendeten Zustand kann das Zeichen nicht eingabeaktiv werden. Wenn der Benutzer jedoch den Namen des Zeichens spricht (wenn die Spracheingabe aktiviert ist), zeigt der Server das Zeichen automatisch an.

Wenn Ihre Clientanwendung mehrere Zeichen gleichzeitig lädt, können Sie mit den Animationsdiensten des Microsoft-Agents Zeichen unabhängig animieren oder die Wait-, Interrupt- oder Stop-Methoden verwenden, um deren Animation miteinander zu synchronisieren.

Der Microsoft-Agent gibt auch andere Animationen automatisch für Sie wieder. Wenn sich der Status des Zeichens beispielsweise mehrere Sekunden lang nicht geändert hat, beginnt der Agent mit der Wiedergabe von Animationen, die den Leerlaufanimationen des Charakters zugewiesen sind. Analog dazu gibt der Agent bei aktivierter Spracheingabe die Lauschanimationen des Charakters und dann Die Höranimationen wieder, wenn eine Äußerung erkannt wird. Diese vom Server verwalteten Animationen werden als Status bezeichnet und definiert, wenn ein Zeichen erstellt wird. Weitere Informationen finden Sie unter Entwerfen von Zeichen für den Microsoft-Agent.