2014年10月15日水曜日

Unreal Motion Graphics (UMG)でプログレスバーを表示してみた

UMGでプログレスバーを作ってみました.

UMGを有効にするには,メニューの編集からエディタの設定を選びます.

実験的,の項目からUMGにチェックを入れ,エディタを再起動します

コンテンツブラウザから新規のアセットを追加します.右クリックメニューからユーザーインターフェースの中のWidgetブループリントを選びます.

できたブループリントのファイルをダブルクリックして開くと,UMGのエディタになるので,適当にプログレスバーを配置し,名前をProgressに変更しておきます.終わったらコンパイルしておきます.

レベルブループリントを開き,追加したブループリントの名前のオブジェクトの変数を作ります.(この図では手抜きでデフォルトの名前のまま).そして,Begin Playイベント時にCreateWidgetを利用して作成したWidgetを生成します.CreateWidgetに作成したブループリントを指定すると,Widgetが生成できます.CreateWidgetが返すのはUserWidget型のオブジェクトなので,キャストを挟んで変数に設定します.

このWidgetから線をひっぱり,Add to Viewportを呼び出すと,画面に表示されます.

Progressと名付けたfloat型の変数を追加しておき,Begin Playイベント時に0で初期化しておきます.

Tickイベントで毎フレーム0.001ずつProgressの値を増やします.ただし,100を超えないようにします.

最後に,Widget変数から線をひっぱりGet Progressと打つと,プログレスバーのオブジェクトが取得できます.そこから更に線をひっぱると,Set Percentというものがあるので,そこに変数Progressの値を設定します.

これをコンパイルして再生すると,プログレスバーが徐々に進んでいきます.

他のUIもいろいろ触ってみたくなってきました.

0 件のコメント:

コメントを投稿