emotion要素は,音声出力と同時に基本表情を行わせる.
現在の実装では,顔表情の変化だけを行ない,音声は変化させない.emotion要素はFSMのFaceExpコマンドとして実装されており,使用例のコマンドは下記と等価である.
<native>to @FSM set FaceExp = HAPPY 1 50 0</native> <prompt>ありがとう。</prompt> <native>to @FSM set FaceExp = NEUTRAL</native>
<emotion type="HAPPY" pattern="1" value="50">ありがとう。</emotion>
native要素は,プラットフォーム依存の出力を実行する.
native要素はlog要素を参考に設計された.native要素は実行可能内容であり、prompt要素中には記述できない.出力は音声合成などと同期して行なわれる.
value要素を併用したり,expr属性を用いることで,変数の値や演算結果をnative出力に含めることができる.
<block> <native>to @FSM set Autonomous = MOVE 0</native> <native>to @FSM set HeadRotAbs.1 = 0 0 0</native> <native>to @PAR set Init = 1</native> <native>to @PAR set Cmd = sleep 1.0</native> <native>to @PAR set Cmd = to @FSM set FaceExp = HAPPY 1 100 1000</native> <native>to @PAR set Cmd = sleep 1.4</native> <native>to @PAR set Cmd = to @FSM set FaceExp = SAD 1 100 1000</native> <native>to @PAR set Cmd = sleep 2.0</native> <native>to @PAR set Cmd = to @FSM set FaceMot = NOD 1</native> <prompt>私には、うれしいことも、悲しいことも、いろいろあります。</prompt> </block>
all-of要素は,顔表情変化と音声出力を並行して行う.
all-of/mediaはPARサブモジュールを使用するための簡易表記である.この仕様は将来変更する可能性がある.
<prompt> <all-of> <media type="face"> <native>sleep 0.1</native> <native>to @FS-MCL set Emotion = FEARED 30</native> <native>sleep 0.5</native> <native>to @FS-MCL set Rot = -2 -1 0</native> </media> <media type="voice"> はい、そのように呼ばれております。 </media> </all-of> </prompt>
media要素は,並行して出力される個々の要素を示す.
all-of/mediaはPARサブモジュールを使用するための簡易表記である.faceの中でnative要素を使う場合のみsleep (秒数)という記述が有効であるが,この仕様はPARの仕様に依存している.この仕様は将来変更する可能性がある.