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"

ゲーム画面に制限時間の表示

alt text        ゲーム画面にこのように制限時間を表示したいと思っているのですが、どのようにBruePrintを用いれば良いのか分かりません。ご教授お願いします。

Product Version: UE 4.12
Tags:
time.png (138.8 kB)
more ▼

asked Jul 07 '16 at 05:42 PM in Japanese

avatar image

aries.Ryuki
9 7 9 10

(comments are locked)
10|2000 characters needed characters left

1 answer: sort voted first

UMGを使用するのが手っ取り早いと思います。

link text

プログレスバーなんかが、そのまんまやりたい事が出来る気がします。

more ▼

answered Jul 08 '16 at 12:46 AM

avatar image

motayoshi.san
731 30 3 8

avatar image aries.Ryuki Jul 08 '16 at 04:32 AM

プログレスバーで表示ができたのですが、時間の減少を表現できません。 BluePrintでTimerの扱い方がうまくできません。

avatar image tamfoi Jul 08 '16 at 05:06 AM

Timer系のノードにはTimerHandleがReturnで帰ってきますそこからGet Timer Elapsed by HandleやGet Timer Remaining by Handleのというノードを使えば残り時間や経過時間を取得できます。それをプログレスバーにバインドすればいいと思います

alt text

timeup.png (145.6 kB)
avatar image aries.Ryuki Jul 08 '16 at 11:03 PM

BluePrintを新たに作成してコメントに合った画像のものを作成し、 レベルプリントで![alt text][1]を作成しました(Timeは作成したBluePrintです) 次に https://docs.unrealengine.com/latest/JPN/Engine/UMG/QuickStart/1/index.html を参考に変数を作成しようと考えたのですが、初めに空のプロジェクトを作成したため「FirstPersonCharacter ブループリント」がありません。この場合 https://docs.unrealengine.com/latest/JPN/Engine/UMG/QuickStart/2/index.html このページのCastに当たる部分には何を与えてあげれば良いのか分かりません。

levelprint.png (104.8 kB)
avatar image tamfoi Jul 09 '16 at 02:19 AM

PawnまたはCharacterの作成、AnimationBPの作成、GameModeの作成が必要です

なつのやさんの『サードパーソン ブループリント ゲーム入門』で一通りの解説がされていますので参考にしてみてください

http://manabibeya.com/


又は必要な物を別のプロジェクトから移行してくる方法もあります。こちらの方が楽そうに見えますが混乱することが多いかもしれません

https://docs.unrealengine.com/latest/JPN/Engine/Content/Browser/UserGuide/Migrate/index.html


適切に作成できていたら作ったCharacterがCast出来ると思います

慣れないうちはテンプレートを元に作りなおすのも手です

avatar image aries.Ryuki Jul 10 '16 at 02:10 AM

Characterの作成後、Charcterの中身はalt text このようにして、 次に新しく作ったブループリント内(MyUI)で alt text のように作成しました。 この後、どのようにして時間を作成したノードと組み合わせるのか分からないためご教授お願いします。

mycharacter.png (89.1 kB)
blueprint.png (384.6 kB)
avatar image tamfoi Jul 10 '16 at 09:42 AM

プログレスバーを配置して選択、Percentという項目があるのでその隣のバインドを選択して作られた関数のReturnValueに残り時間を入れます。

GetTimerRemainingTimeByHandleのReturnValue÷LimitTimeの値を変数として保存しておいてそれを入れると良いと思います。LimitTimeで割る理由は0~1の値にするためです。

バインドに関してはドキュメントのここでも取り上げられていますね

https://docs.unrealengine.com/latest/JPN/Engine/UMG/QuickStart/2/index.html

avatar image aries.Ryuki Jul 10 '16 at 03:01 PM

コメントと、ドキュメントを見ながら画像のようにノードを配置したのですが、画面上には0.0が表示され続けるだけでプログレスバーが減少しませんでした。alt text

blueprint.png (64.9 kB)
time.png (113.6 kB)
avatar image tamfoi Jul 10 '16 at 04:43 PM

GetTimerRemainingTimebyHandleのHandleに接続してないからだと思います。Handleを渡さないとどのタイマーの残り時間を出すのか判別出来ないかと。

avatar image aries.Ryuki Jul 11 '16 at 02:36 AM

ドキュメントのように、myCharacterをHandleに接続するのかと思っていましたが、違いました。 エラーメッセージとして、構造体と互換性が無いとでました。

avatar image tamfoi Jul 11 '16 at 05:00 AM

Handleに渡すのはSetTimerByEventのReturnValueで帰ってくる値です。それをどこかに一度保存するなりして渡してあげて下さい。

avatar image aries.Ryuki Jul 11 '16 at 07:25 AM

alt text画像のようにイベントグラフ内でSetTimerByEventのReturnValueを一度timeに保存し、 次にalt text画像のようにバインドした中にtimeを渡したのですが上手く行きませんでした。

eventgragh.png (216.1 kB)
handle.png (172.2 kB)
avatar image motayoshi.san Jul 11 '16 at 07:49 AM

SetTimerByEventの実行ピンが繋がれていないのでタイマーが発行されていないように見えます。

タイマーを利用したい箇所と繋いでみてください。

avatar image aries.Ryuki Jul 11 '16 at 08:14 AM

begin playのタイミングで利用したいと思っていたのですが、検索がヒットしませんでしたBluePrintのウィジェットでは出ないのですか? それともSetTimerByEventには繋げることができないのでしょうか?

avatar image tamfoi Jul 11 '16 at 08:29 AM

UMGの場合はEventConstructを使って下さい

avatar image aries.Ryuki Jul 11 '16 at 08:50 AM

EventConstructを使いたいのですが、 https://docs.unrealengine.com/latest/JPN/Engine/UMG/QuickStart/2/index.html このドキュメントで参考にした際に使用しているため、新しく作成しようと試みましたが既存のノードのところに飛ぶだけで出来ませんでした。 また、同じウィジェットプリント内に新規イベントグラフを作成しEventConstructを作成しようと試みましたが出来ませんでした。

avatar image aries.Ryuki Jul 11 '16 at 08:52 AM

alt text すみません画像の貼り忘れです。現在イベントグラフ内はこのような形になっています

avatar image tamfoi Jul 11 '16 at 08:58 AM

MyCharaの後に繋げば大丈夫です

avatar image aries.Ryuki Jul 11 '16 at 09:19 AM

Play後に時間を確認できました。しかし、時間の進み具合?がおかしいです。LimitTimeのデフォルト値は60にしているのですが 0に近づくに連れてタイムが遅くなります。 また、プログレスバーも変化しませんでした。

avatar image tamfoi Jul 11 '16 at 09:34 AM

時間の進み具合というのは画像のPrintStringに繋がってる部分のことでしょうか。

そこは 残り時間÷経過時間 になっているので、 残り時間÷制限時間 にして確認してみてください。そうしたら 1→0 に変化していくのが確認できると思います。

プログレスバーについては設定部分も貼ってもらわないとなんとも言えないです…

avatar image aries.Ryuki Jul 11 '16 at 09:48 AM

alt text経過時間は画像のように進んでいます。 残り時間÷制限時間にすると1→0に変化するのを確認できました。 プログレスバーの部分はalt text画像のようになっています。 残り時間に応じて、バーが減少する形にしたいです

elapsedtime.png (593.6 kB)
progressbar.png (169.5 kB)
avatar image tamfoi Jul 11 '16 at 10:11 AM

バインドしてるものが違うようです。

バインドする用の関数を作ったと思います(画像を遡って見てみると多分GetPercent0だと思います)

その関数をバインドしてください

avatar image aries.Ryuki Jul 11 '16 at 10:42 AM

実行することが出来ました。ここまで、丁寧に教えていただきありがとうございました。

(comments are locked)
10|2000 characters needed characters left
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