Playable API は、PlayableGraph と呼ばれるツリー構造にデータソースを整理して評価することで、ツール、効果、他のゲームプレイメカニズムを作成する方法を提供します。PlayableGraph を使用すると、複数のデータソースをミックス、ブレンド、変更し、1 つの出力として再生できます。
Playable API は、アニメーション、オーディオ、スクリプトをサポートしています。さらに、Playable API では、スクリプトを使用して アニメーションシステム およびオーディオシステムと相互作用することも可能です。
以下のトピックでは、Playable と Playable API について詳しく説明します。
アニメーションシステムにはグラフ編集ツールがすでにありますが、これはアニメーション再生に制限されたステートマシンシステムです。Playables API は、より柔軟性を高め、他のシステムをサポートできるように設計されています。また、Playables API では、ステートマシンでは作成できないグラフが作成できます。Playables API のグラフはデータフローを表し、各ノードで何を生成して使用するかを示します。さらに、1 つのグラフで複数のシステムを使用できます。そのため、1 つのグラフの中にアニメーション、オーディオ、スクリプトのノードを加えることができます。
Playable API を利用すると、動的なアニメーションのブレンディングが可能です。つまり、シーンのオブジェクトが独自のアニメーションを生成できます。例えば、武器、箱、罠のアニメーションを PlayableGraph に動的に加え、限られた時間だけ使用することなどが可能です。
Playable API を使用すると、AnimatorController アセットの作成と管理に関連するオーバーヘッド無しに、1 つのアニメーションを簡単に再生することができます。
Playable API を使用すると、動的にブレンディンググラフを作成し、直接フレームごとにブレンディングウェイトを制御することが可能です。
PlayableGraph はランタイムに作成し、条件に基づいて必要に応じて Playable ノードを加えることができます。PlayableGraph は、ノードが有効でもあり無効でもある “1 つですべてに対応できる” 大規模なグラフではなく、現在の状況の要件に合うように調整することができます。