x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

プログレスバーのアニメーション。

プログレスバーが減少するとき、一瞬で減少値まで行ってしまうので味気ないです。そこで、ゆっくり減少させたいのですが、方法がわかりません。回答よろしくお願いします。 それと、プログレスバーが減少する際。格ゲーやダークソウルなどでみられる、ゲージが減り、その後ろに隠れていたゲージが追いかけるように減っていく処理(わかりにくくてすいません。)も分かりましたらお願いします。

Product Version: UE 4.9
Tags:
more ▼

asked Feb 22 '16 at 05:41 AM in Japanese

avatar image

zettonsouls
86 43 31 39

avatar image motayoshi.san Feb 22 '16 at 07:00 AM

進捗値として持っている変数をTick等で徐々に減らす(増やす)をすれば一瞬で目的の値になることはないかと

また、CurveやEaseを使えば簡単に見栄えを確保することも可能かと思われます。

UMGのProgressBarウィジェットを使用していると仮定しますが、同座標に前面と背面のProgressBarを用意して前面を一瞬、背面をアニメーションさせれば言わんとしている事は可能かと思います。(フォーラムを探せばもっと効率的な方法はあるかもしれません。)

avatar image takanyan7 Feb 22 '16 at 09:05 AM

Finterp Toが便利かと思います。 CurrentのFloatの値をTagetの値に向けていInterp Speedの割合で値を増やします。 Tick等からDeltaTimeを与えることで、フレームレートが違う環境でも同じ時間で増えます。

avatar image zettonsouls Feb 27 '16 at 07:07 AM

返事が遅れてしまいすいません。FInterp Toについて調べて実行みましたが、Delta TimeにTickを入れても上手くいかないので、もう少し詳しく教えていただけるとありがたいです。最初の質問と趣旨がずれているかもしれませんが、良ければ回答お願いします。alt text

BPがスパゲッティですいませんが、どこが間違っているでしょうか?Float変数のTick 0はEvent TickのIn Delta Timeの数値が入った変数です。

ue4_30.jpg (128.0 kB)
avatar image takanyan7 Feb 27 '16 at 08:27 AM

思いつく最小規模だとこうなります。 多分ですが、プログレスバーの値は最大1なので、 Speedが10だと大きすぎるのかもしれません。

alt text

percent.jpg (87.6 kB)
avatar image takanyan7 Feb 27 '16 at 08:44 AM

ああ、違いましたね、

敵の攻撃処理の部分と一緒の変数で、

表示の値を変更してしまっているのかもしれません。

(一寸どう動いているのかわからないので失敗している気がします。

敵の攻撃処理等のSYSTEM部分として、

処理後のHPの変数を作成し、HP変数だけUI部分に渡し

先のUI部分では、スムーズに表示等の処理だけにして、

役割を分けると解りやすくなると思います。

avatar image zettonsouls Mar 01 '16 at 05:29 AM

また返信が遅れてしまいすいません。あなたのおかげでFInterp Toの使い方がわかりました。画像を添付して下さりありがとうございます。無事解決しました。

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

質問者さんのヤリタイことは緑とか黄色とか現在のHP+赤で減るHPゲージを作りたいってことですよね。

やり方は簡単です、現在のHPバーとダメージを貰う前のHPバーの二つのプログレスバーを用意します。

現在のHPをソートで1にして上にします。

ダメージをもらう方のHPバーをソート0にして下にします。

現在のHPは通常通りダメージ処理を行い、ダメージをもらった方を表現する方はtakanyan7さんが答えているFinterp Toで減らしながら表現してあげれば良いと思います。

more ▼

answered Feb 22 '16 at 09:55 AM

avatar image

nullponull
1.5k 70 18 51

avatar image zettonsouls Feb 27 '16 at 07:10 AM

説明不足ですいません。その通りです!!丁寧な説明、ありがとう御座います。

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question