みつまめ杏仁

アンリアルエンジン(UE4)でGUIを作るためにゴニョゴニョしてます。UIデザイナーの皆様の助けになれば幸いです。

わりと本気のコンボカウンター 《完結編》

いよいよ動作確認です。

前回の記事はこちら

わりと本気のコンボカウンター 《準備編》 - みつまめ杏仁

わりと本気のコンボカウンター 《UMG編》 - みつまめ杏仁

わりと本気のコンボカウンター 《Widgetブループリント編》 - みつまめ杏仁

 

一揃いのアセットができたので、テストしてみます。

テスト用のレベルを開いた状態で、エディタを開きます。

f:id:hiyokosabrey:20161009230625p:plain

 

まずはカウント用の変数を一つ用意。Int型です。

CreateWidgetから始めます。

CreateWidgetの ReturnValue ピンの上で Promote to Variable を選ぶと簡単に変数化できます。とりあえず表示位置を大まかに決めておいて、あとはバインド祭り。

f:id:hiyokosabrey:20161009231355p:plain

Widgetの中に仕込んでおいた イベントディスパッチャーにバインドします。

バインドは「紐づける」という意味合いです。四角いピンとカスタムイベントをつないでおくと、Widget内でイベントディスパッチャーがCall されたタイミングでここに通知が来て、カスタムイベントが作動するというしくみです。

CreateWidgetした側は、好きなタイミングでWidgetに干渉できるのに対して、CreateWidgetされた側からは逆の干渉ができません。そこで用意されているのが、このイベントディスパッチャーを使ったデリゲートインターフェイスという2つの仕組みです。

EventDispatcher をCallしてるノードと、Bindしてるノードにマウスカーソルを重ねると

f:id:hiyokosabrey:20161009234141p:plain

デリゲートという用語が出てくるのが分かります。

今回インターフェイスは使っていませんが、これもGUIにはとても相性がよいです。

 

つぎに、カウントアップの呼び出し部分。

スペースキーを押すとカウントするようにしています。

f:id:hiyokosabrey:20161009235039p:plain

最後にWidgetの関数に値を渡して完成。

 

再生してテストしてみましょう。

f:id:hiyokosabrey:20161010002537j:plain

f:id:hiyokosabrey:20161010002546j:plain

f:id:hiyokosabrey:20161010002552j:plain

f:id:hiyokosabrey:20161010002558j:plain

動画を貼りたかったのですが、直接はダメっぽいので諦めました。

 

消え方が派手だったり、確定した時の演出があると、最終のカウントがよりわかりやすくなります。

 プレイヤーは視界の端で見てるので、多少派手なくらいがちょうどいいです。

 

というわけで

わりと本気で作ってみたコンボカウンターです。

デザイナーだけでこのようなモックアップを作ってテストしてもらい、プログラマに組み込みを依頼する流れでいけば、小さなイテレーションループで済みそうですがいかがでしょう。

 

ではでは

ステキなカウントライフを