以下の内容はhttps://bluebirdofoz.hatenablog.com/entry/2023/09/03/232508より取得しました。


DialogueSystemのダイアログエディタの使い方 その7(Conversationsカテゴリ)

本日は DialogueSystem の勉強枠です。
DialogueSystem のダイアログエディタの使い方を確認しながら記事にします。

前回記事

以下の前回記事の続きです。
bluebirdofoz.hatenablog.com

デフォルトの OnExecute()

シーンオブジェクトを既定の OnExecute() イベントに割り当てることはできません。これは Dialogue System データベースがシーンとは独立して存在するためです。
代わりに、プレハブや ScriptableObject などのアセットファイルを割り当てる必要があります。

次の例ではオーディオクリップを再生する方法を提供する ScriptableObject アセットを作成しています。
そのメソッドをダイアログエントリの OnExecute() イベントに割り当てます。

まず次のコードを含む TestScriptableObject という名前の新しい C# スクリプトを作成します。

using UnityEngine;
[CreateAssetMenu(fileName = "TestScriptableObject")]
public class TestScriptableObject : ScriptableObject
{
    public AudioClip[] audioClips;
    public void PlayAudioClip(int i)
    {
        AudioSource.PlayClipAtPoint(audioClips[i], Vector3.zero);
    }
}

次に[Project]ビューで右クリックから[Create -> TestScriptableObject]を選択します。これによりアセットファイルが作成されます。

アセットを Resources という名前のフォルダーに移動することでビルドに含めることができます。
Unity の一部のバージョンまたは一部のプラットフォームでは、必要ないと判断されたアセットが削除されることがあります。
これはどのシーンでも参照されていない ScriptableObject アセットでよく発生するので注意が必要です。

作成したアセットファイルのInspectorビューを開き、オーディオクリップを割り当てることができます。

最後にエントリノードの OnExecute() イベントの[+]ボタンをクリックして TestScriptableObject を割り当てます。
実行するメソッド (PlayAudioClip) を選択し、再生するオーディオクリップのインデックスを指定します。

これでエントリノードが再生されたタイミングで指定のオーディオが再生されるようになります。

シーンベースの OnExecute()

[Add Scene Event]をクリックすると、シーンオブジェクトを割り当てることができる2つ目の OnEecute() イベントが追加されます。
実際の UnityEvent は現在のシーンに存在するため、データベースのエクスポート機能と互換性があります。


アウトラインエディタ

アウトラインモードで会話を編集することもできます。これは Bioware の Aurora ツールセットのようなエディタのユーザーにとっては馴染みがあるかもしれません。
アウトラインモードに切り替えるには[Menu -> Outline Mode]を選択します。

次回は Templates と Watches カテゴリについてです。
bluebirdofoz.hatenablog.com




以上の内容はhttps://bluebirdofoz.hatenablog.com/entry/2023/09/03/232508より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14