共用方式為


IAgentCharacter::P repare

[從 Windows 7 開始,Microsoft Agent 已被取代,而且在後續版本的 Windows 中可能無法使用。]

HRESULT Prepare(
   long dwType,     // type of animation data to load
   BSTR bszName,    // name of the animation 
   long bQueue,     // queue the request
   long * pdwReqID  // address of request ID
);

擷取字元的動畫資料。

  • 傳回S_OK,表示作業成功。 當函式傳回時, pdwReqID 會包含要求的識別碼。

dwType

值,表示要載入的動畫資料類型,必須是下列其中一項:

描述
const unsigned shortPREPARE_ANIMATION = 0;
字元的動畫資料。
const unsigned shortPREPARE_STATE = 1;
字元的狀態資料。
const unsigned shortPREPARE_WAVE = 2
字元的音效檔 (。WAV 或 。語音輸出的 LWV) 。

bszName

動畫或狀態的名稱。

動畫名稱是以使用 Microsoft Agent 字元編輯器儲存時為字元定義的 。

針對狀態,此值可以是下列其中一項:

描述
「Gesturing」 擷取所有 Gesturing 狀態動畫。
「GesturingDown」 擷取 GesturingDown 動畫。
「GesturingLeft」 擷取 GesturingLeft 動畫。
「GesturingRight」 擷取 GesturingRight 動畫。
「GesturingUp」 擷取 GesturingUp 動畫。
「隱藏」 取隱藏 狀態動畫。
「聽覺」 擷取 聽覺 狀態動畫。
「Idling」 擷取所有 Idling 狀態動畫。
「IdlingLevel1」 擷取所有 IdlingLevel1 動畫。
「IdlingLevel2」 擷取所有 IdlingLevel2 動畫。
「IdlingLevel3」 擷取所有 IdlingLevel3 動畫。
「Listening」 取接聽 狀態動畫。
「移動」 擷取所有 移動 狀態動畫。
「MovingDown」 擷取所有 移動 動畫。
「MovingLeft」 擷取所有 MovingLeft 動畫。
「MovingRight」 擷取所有 MovingRight 動畫。
「MovingUp」 擷取所有 MovingUp 動畫。
「顯示」 擷取 顯示 狀態動畫。
「Speaking」 擷取 Speaking 狀態動畫。

針對 。WAV 檔案,將 bszName 設定為 的 URL 或檔案規格。WAV 檔案。 如果規格未完成,則會將它解譯為相對於 Load 方法中使用的規格。

bQueue

布林值,指定伺服器是否將 準備 要求排入佇列。 True 是表示 會將要求排入佇列,並導致後面任何動畫要求等到載入它指定的動畫資料為止。 False 會 以非同步方式擷取動畫資料。

pdwReqID

接收 準備 要求識別碼的變數位址。

如果您使用 HTTP 通訊協定 (載入字元。ACF 檔案) ,您必須使用 Prepare 方法來擷取動畫資料,才能播放動畫。 如果您使用 UNC 通訊協定 (載入字元,則無法使用此方法。ACS 檔案) 。 如果您使用 UNC 通訊協定 (載入該字元,您也無法使用 Prepare 擷取字元的 HTTP 資料。ACS 字元檔案) 。

使用 Prepare 方法擷取的動畫或音效資料會儲存在瀏覽器的快取中。 後續呼叫會檢查快取,如果動畫資料已存在,控制項會直接從快取載入資料。 載入之後,即可使用 PlaySpeak 方法播放動畫或音效資料。

您可以使用逗號分隔多個動畫和狀態。 不過,您無法在相同的 Prepare 語句中混合類型。