概要
ブループリントは、柔軟で強力なビジュアルスクリプティングシステムです。通常はプログラマーが使用する概念やツールを利用して、誰でもVTuber活動が楽しくなるユニークなインタラクションを作成できます。ブループリントは、Warudoエディター上で作成・編集することができ、すべての変更はリアルタイムでシーンに反映されます。
ブループリントは、簡単に言えばフローチャートのようなものです。「Xが発生したら、Yを実行する」 といった条件を定義します。いくつか例を見てみましょう。
- Escキーを押すとカメラが揺れます
- Twitchで「beep boop」を含むメッセージを受信すると、「ピッポッ」という効果音を再生します
- 大声で叫ぶとキャラクターが空中に飛び上がります
あまり面白くないですか?実は、こんなこともできます。
- 口を開けると、キャラクターが火を吐きます(作成者: @MVjagaimo)
- キーを押すと、キャラクターが部屋の別の場所へ歩き、カメラがキャラクターを追いかけます(作成者: @FelineEntity)
- WASDキーを押すと、キャラクターがトラックを運転します(作成者: @sablokato)
- Twitchの引き換えを受け取ると、回転して空中に飛び上がります(作成者: @Shellbunny_)
- 人差し指同士を触れ合わせると、指の間に電気の火花が発生します(作成者: @HakuyaTira)
- キャラクターが手で小道具を叩くと、小道具が飛んでいきます(作成者: @FelineEntity)
- 両手を押すと、リングフィットの小道具が圧迫されます(作成者: @VanJiha_Vtuber)
- MIDIコントローラーのボタンを押すと、仮想MIDIコントローラーのボタンが点灯します(作成者: @ChiuYukina)
- etc...
そう、可能性は無限大です! Discordコミュニティで既成のブループリントを見つけて共有したり、独自のブループリントを一から作成したりできます。ハンドブックのこのセクションでは、ブループリントの基礎を説明していきます。初歩的な例から、より高度なトピックについて詳しく説明します。
Warudoのブループリントは単に目新しいものではなく、アーキテクチャの重要な部分を占めています。たとえば、Warudoのモーションキャプチャは、すべてブループリントを使用して実装されています。無限の組み合わせの可能性を秘めた、多種多様なノードタイプの提供により、ブループリントシステムは継続的な更新と改良が保証されます。
もしあなたが開発者であれば、Warudoのブループリントシステムに、新しいノードタイプを追加して拡張できることを知って喜ぶでしょう!詳細については、カスタムスクリプトのセクションを参照してください。
インターフェース
[ブループリント] タブには、シーン内のすべてのブループリントのリストが表示されます。ブループリントを選択してノードエディターで編集、[パレット] タブからノードをドラッグしたり、[プロパティ] タブで選択したブループリントのプロパティを変更したりできます。
ブループリントの編集画面
ツールバーには以下のボタンがあります。
- ブループリントの追加: シーンに新しいブループリントを追加します。
- ブループリントの削除: 選択したブループリントをシーンから削除します。
- ブループリントの複製: 選択したブループリントを複製します。
- ブループリントの名前変更: 選択したブループリントの名前を変更します。
- ブループリントのグループを作成: ブループリントをまとめるグループを作成します。ドラッグでグループの管理ができます。
- ブループリントのフォーマット: 選択したブループリントをフォーマットします。つまり、ノードを自動的に配置します。
- クリップボードからブループリントをインポート: クリップボードからブループリントをインポートします。
- ブループリントをクリップボードにエクスポート: 選択したブループリントをクリップボードにエクスポートします。
- ファイルからブループリントをインポート:: JSONファイルからブループリントをインポートします。
- ブループリントをファイルにエクスポート: 選択したブループリントをJSONファイルにエクスポートします。
インポート/エクスポート機能を使用して、シーン間でブループリントをコピーできます。
ノードエディター内を移動するには、マウスの左ボタンでパン、マウスホイールでズームします。マウスの右ボタンで複数のノードを選択できます。ひとつ以上のノードが選択されている場合は、マウスの左ボタンで移動したり、Deleteキーで削除したりできます。また、 Ctrl+CおよびCtrl+Vを使用して、選択したノードをコピーして貼り付けることもできます。