Page 1 of 1

Trigger Transitionの送信元を調べる方法はありますか?

Posted: 2021/07/02 02:59
by sugkaz
お世話になっております。

表題の通りなのですが、挙動の「Trigger Transition」がどこから呼ばれているかを調べる方法というのはあるでしょうか?

特に、Arbor Editor内で挙動の「Send Trigger」等を使用したり、何らかのスクリプトのpublicな入力フィールド内にトリガーとなる文字列を入力している場合、どこから呼ばれているかを調べるのは困難な気がしているのですが、何か便利な方法がありましたら、ご教示いただけますと幸いです。

お手数おかけいたしますが、よろしくお願いいたします。

Re: Trigger Transitionの送信元を調べる方法はありますか?

Posted: 2021/07/02 07:57
by caitsithware
Arborのご利用ありがとうございます。

そもそもなぜ送信元を調べる必要があるのか・・・ではありますが。
SendTriggerメソッドの呼び出し元を調べる機能はArbor側には存在しません。
ただのメソッドの呼び出しである以上、Visual StudioなどのIDEの機能を使用してメソッド呼び出し元がどこにあり、いつ呼び出されているか調べてください。
もし実行時に呼び出し元が必要でしたら、そもそも必要になることがおかしいので送信する文字列をそれぞれ変えて別のTriggerTransitionで待ち受けてください。

Re: Trigger Transitionの送信元を調べる方法はありますか?

Posted: 2021/07/02 13:50
by sugkaz
ご返信ありがとうございます。

>そもそもなぜ送信元を調べる必要があるのか・・・ではありますが。
そんなに不思議なことでしょうか…?
数ヶ月前のプロジェクトを触ったり、複数人で作業しているプロジェクトの場合、プロジェクトを見ただけでは送信元がわからないという可能性は大ではないかなと思います。

また、別アセットの話で恐縮ですが、Playmakerは送信元がPlaymaker内でわかるようになっております。
(Playmakerの機能で呼び出した場合ではありますが)

ともあれ、Arbor側にはとりたてて機能がないとのこと承知いたしました。

Re: Trigger Transitionの送信元を調べる方法はありますか?

Posted: 2021/07/03 01:56
by caitsithware
sugkaz wrote: 2021/07/02 13:50 >そもそもなぜ送信元を調べる必要があるのか・・・ではありますが。
そんなに不思議なことでしょうか…?
数ヶ月前のプロジェクトを触ったり、複数人で作業しているプロジェクトの場合、プロジェクトを見ただけでは送信元がわからないという可能性は大ではないかなと思います。
なるほど、後からグラフ上で確認するため、ということですね。
一応「もし実行時に呼び出し元が必要でしたら~」という可能性もありましたので記載した感じです。

要約すると「挙動のSendTriggerを持つ&該当するFSMを直接指定し送信するメッセージが同じものを列挙する機能をTriggerTransitionのエディタ拡張に欲しい」
という感じでしょうか。
(ちなみに、なんらかの自作スクリプトから直接SendTriggerメソッドを呼び出している場合は、コード解析が必要になるためコストの関係で難しいです)
要望として今後の更新で対応できないか検討いたします。