関連ブログ
- [UE4][UE5]開発環境の容量を少しでも減らす 2024.08.14UE
- [UE5] PushModel型のReplicationを使い、ネットワーク最適化を図る 2024.05.29UE
- [UE5]マテリアルでメッシュをスケールする方法 2024.01.17UE
CATEGORY
2018.06.19UE4UE/ BlueprintUE/ Sequencer
今回の記事では、レベルシーケンサーからEvent Receiverを使ってアクターのカスタムイベントを実行してみます(UE4.16以降)。
レベルシーケンサー(やマチネ)ではEvent Trackを使えばレベルブループリントのカスタムイベントを呼ぶことができました。ただ、アクターのカスタムイベントは直接呼ぶことができないため、間接的にレベルブループリントなどを経由する必要があります。
Event Trackでレベルブループリントのカスタムイベントを呼べるのはとても便利ですが、そうなるとレベルブループリントが込み入ってしまいます。そこで、レベルシーケンサーのEvent Receiverという機能を使ってアクターのカスタムイベントを直接実行してみましょう。
まず、新規にレベルを開き、アクターブループリントとレベルシーケンサーをレベルに配置します。
レベルシーケンサーを選択して、ディテールパネルからAdditional Event Receiversの+を押してスロットを追加し、レベルに配置したブループリントを登録します。ここで登録したブループリントのカスタムイベントを実行できるようになります。
また、最後にプレイして確認するために、AutoPlayのチェックを入れておきました。
次にレベルシーケンサーを開き、Event Trackを追加します。
併せて、レベルに配置してReceiverに登録したアクターもトラックとして追加しておきます。
そして、Event Trackを右クリックし、プロパティのTrack Eventにアクターを登録します。シーケンサーに追加したトラックから選択できますので、Event Receiverとして登録したアクターが選択できない場合は、シーケンサーのトラックに正しく追加されているかご確認下さい。
では、アクターを開きカスタムイベントを作ります。
シーケンサーからは名前でコールするので、イベント名(ここでは[CustomEvent])をコピーしておきましょう。
最後に、シーケンサーに戻りEvent Trackにキーを打ちます。
キーを右クリックしてプロパティからEvent Nameとしてカスタムイベント名を入力します。
プレイやシミュレートしてみましょう。
アクターのカスタムイベントが実行されました。
なお、シミュレートの場合は、シーケンサーのタイムスライダーをスクラブしてキーを通過するだけでイベントが実行されます。ちょっとした確認に使えるかもしれません。
レベルブループリントにいろいろ書かなくて済みますね。便利だねー