ゲーム制作まで書くブログ

読まないで><

UE4_ウィジェットで用意した文章をランダムで表示する機能

くsssssssssssssssssssssssssssssssっそ簡単

 

世にいるクリエイターはたぶんみんな「その程度のことで記事を書くんですか?」

と思われるだろう。

 

うるさい。

自分で開発した機能をひけらかしたくなるのが普通でしょう!

 

f:id:NeToSuKe:20201111180902p:plain

この「Now Loadin」の部分

点はThrobberというウィジェットのプリミティブが入ってるだけ

画像だと映ってないな・・・

文字の後を「…」この点が明滅してアニメーションしてくれる面白いやつ。

点を別の形や画像にしたり、数を増やしたりできるのでおすすめ。

 

じゃなくて

 

この文字を、あらかじめ用意した文字列からランダムで

しかもこのウィジェットを表示中に切り替えられる機能

切り替えは今のところ自動。

 

まず答えを張る

f:id:NeToSuKe:20201111181139p:plain

これをウィジェットのイベントグラフに作る。

これ以外にもテキストバインドしないといけない。

 

 ウィジェットのテキストをバインド

 ウィジェットのキャンバスにテキストを追加したら、

左の詳細からコンテンツ>Text で右のバインドをポチってやって作成する

ようするに、外からの要因で中身を作りますよっていう機能

f:id:NeToSuKe:20201111184931p:plain

 

変数作成

 テキストのバインドを作成すると

Get~~(Textウィジェットの名前)がリターンノードにつながってるグラフが出てくる。

ここにテキストの変数を作ってゲットしてつなげておく。

LoadingTextっていうのを作ってつなげた。

f:id:NeToSuKe:20201111185347p:plain

 

ウィジェットのイベントグラフで作業

イベントグラフのTickを使うます

●表示する文字列を用意

配列を作成で文字を書き込む

色(形式)はそのうち変わるので放置

画像ではすでにテキスト型になっておるがな

f:id:NeToSuKe:20201111191355p:plain

 

●それをGET(コピー)

配列とindexから、要素を抜き出すGETをつなぐ

このとき、参照とコピーの二つが出てきて

一見、何が違うねんってノードの見た目になるけど

参照は、その要素をごにょごにょして違うものにして

配列に戻す場合

今回はいじらないで、入ってるものをただ見せるだけなので

コピー

f:id:NeToSuKe:20201111191454p:plain

 

●ランダムで選んでもらう

f:id:NeToSuKe:20201111191802p:plain

今回はこのノードを使ってランダムにした

なんかいろいろあるけど

0~5の6個から選ぶので、これで十分。

こいつは数字を返してくれるだけなので

さっきのGETと組み合わせて使う。

 

●Tickにつなぐ(荒ぶる)

やらなくていい

ただ、このままだと、瞬間的に選び続けるので

テキストが荒ぶる

て言いたかっただけ

 

Do Onceをつないで、何秒で変わるか設定

f:id:NeToSuKe:20201111192219p:plain

そこで、DoOnceを使う。

その処理の最後にDelayをいれてやると

Delay含めたDoOnceの後の処理が終わるまで

繰り返さないくなる。

マジ便利。

あとは、処理の最後から、DoOnceのResetにピンをつないで

また処理をしてくれるようにする。

 

Delayを1秒にしたから

1秒ごとに文字が変わる。

 

 

これで完了。

 

たったこれだけなので

ただ文字が1秒おきにパッパッと変わるだけだが

やりようによってはいくらでも見栄えをよくできる。

 

 

すごく基本的な機能だけで、やりたいことが実現できたので

テンション上がってここに書き込んだ。