妹でもわかるUnrealEngine4

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

ウィジェット

UMGウィジェットの表示がHTML5だと変わってしまう件(4) TTFフォントをOTF形式に変換してからアセット化

「とりあえずOTF形式のフォントを使えば大丈夫、ということが昨日わかったわけだけど、TTFしかないフォントもたくさんある。妹が使ってたやつもそう」妹「別のフォント探さないと駄目かな」「探してもいいんだけど、TTFからOTFに変換するという方法もある」j…

UMGウィジェットの表示がHTML5だと変わってしまう件(3) フォントがOTF形式なら正しく表示された

「バグ報告をしようと思って、最小限のデータだけの確認用プロジェクトを作ってたんだけど、そうすると何故か普通に表示できちゃったんだよ。どうやらフォントがデフォルトのRobotoのままだったからみたいで、昨日のプロジェクトもRobotoにすると問題なくな…

UMGウィジェットの表示がHTML5だと変わってしまう件(2) 何かがおかしいということはわかった

「どうも表示がおかしいのはフォント部分みたいなので、HTML5のフォント表示について、いくつかの設定を試してみたけど、同じだったり、そもそもブラウザでエラーになったり、どれも上手くいかない。それで新機能も試してみた」「4.14だったか15だったかから…

UMGウィジェットの表示がHTML5だと変わってしまう件(1) 状況確認

「シューティングゲームに得点表示を付けたいんだけど、ウィジェットに関しては以前妹が作ったゲームでちょっとした問題が起きてるのが未解決。また同じ問題が起きたら嫌だから、これを解決してから取り掛かりたい」妹「ちょっとじゃないよ! 大問題だよ!」…

UE4でSpriteStudioのロゴを表示する

「今日はSpriteStudioのIndie版を使う時の条件、最初にロゴの表示するやつの手順を確認をしようと思う。バージョンは、UE4.13.1、SpriteStudio5.7、SS5PlayerForUnrealEngine4 1.2.2」妹「ゲームを売り出す時に必要なんだっけ?」「無料でもゲーム作品を出す…

ポストプロセスやウィジェットで画面の色を変える実験

「ぷちコン応募時に上手く出来なかった宿題で、まずダメージ時に画面の色を変えたかったというのをやってみる」妹「ポストプロセスはわたしもやりたかったんだよ。ヒシャカイシンド? とか。でもなんか欲しい見た目になってくれなかったんでやめたけど」「こ…

UE4.13からPaper2DスプライトをUMGで表示できる……らしい

www.unrealengine.com「4.13の更新情報、日本語のやつが出てたんだけど、これによるとウィジェットの中にPaper2Dのスプライトを使えるようになったらしい。これ妹がほしがってたやつだよね?」妹「あ、さっきそれ見たよ。これほんとかな……C++専用とかじゃな…

UE4用のSpriteStudioプラグインが大幅強化

historia.co.jp「久々に妹向けのニュースが来たよ。SpriteStudioの新バージョン5.7用のプラグインが出てる。その5.7自体はまだ出てないみたいなんだけど……」妹「駄目じゃん!」「そのうち出るでしょ。今回はSpriteStudio側の新機能対応だけじゃなくて、UE4の…

UMGで同じウィジェットに複数のアニメーションを同時につけたい

妹「HPのハートを、ダメージを受ける毎に小さくするブループリントと、上下にふよふよ動くアニメーションがあるんだけど、何故かこれを同時に実行すると上手く動かないんだよ。動かすのに使ってるパラメータは別だと思うんだけど」「たしかに上手くいかない…

ウィジェットのスロット

妹「ひさしぶりにウィジェットを作ってたんだけど、このスロットっていうのは結局何なんだろ? それが置いてある場所というか、入ってるところのことなんじゃないかと思うんだけど。同じScaleBoxでも、それがCanvasに置いてあると、スロットのとこにはCanvas…

ウィジェットのイベントConstructが発生するタイミング・その2

前回の話imoue.hatenablog.com「……ということを書いていたところ、AddToViewportするまでConstructが働かないなら、むしろ最初にAddToViewportしちゃうという方法を教えてもらったよ」妹「最初からAddViewportするとウィジェットが一瞬見えちゃうんじゃない…

ウィジェットのイベントConstructが発生するタイミング

妹「ウィジェットのConstructイベントから、こういうブループリントに繋がってるんだけど、ここが呼び出されるのが表示の後だから、表示される前に配列の大きさを使えないんだよ。Constructって作成した時に呼び出されるもんだとばっかり思ってたんだけど」…

ImageウィジェットにSpriteは使えなさそう

妹「お店でアイテム買う画面を作ってたけど、あれアイテム増えてないから、お金が減ってるだけだから、ちゃんとアイテムも増やそうと思ってるんだけど、インベントリの画像にSpriteって使えないのかな?」「SpriteってPaper2Dで使ってるやつ?」妹「そうそう…

OnMouseMoveで自作カーソルを動かす……のはあんまり良くない

imoue.hatenablog.com「前にウィジェットでマウスカーソル作った時にOnMouseMoveがないか探してたんだけど、オーバーライドのところで見つかったから、今日はこれを使って自作カーソルの移動処理を作ってみました」「Canvasでカーソル作ってslotを経由したり…

OnKeyDownとOnPreviewKeyDownの違い

妹「結局のところOnPreviewKeyDownのプレビューというのはなんだったの? べつにOnKeyDownでも良かったの?」「OnKeyDownはそのウィジェットにフォーカスがある時だけ動くんだけど、OnPreviewKeyDownだとそれが子ウィジェットにフォーカスがあっても動く、と…

イベントでHandledを返して標準操作を無効化する

imoue.hatenablog.com「昨日の、フォーカス移動を自前のキー処理でやってても、カーソルキーとかでも動かせちゃう問題だけど、こういう風にすると対応出来る」「昨日のブループリントだと、A・S・Dの3つのキーのどれでもないキーが押された時、最後のブラン…

OnPreviewKeyDownイベントでウィジェットのフォーカスを制御する

妹「EventReply関係の話を探していたら、なんかウィジェットをキーボードを動かそうとしてる話を見つけたんだけど、その人がやってた方法はこうやってOnPreviewKeyDownイベントをオーバーライドしてたんだよ」「同じやり方を新しいウィジェット用に試したん…

Event Reply(イベント応答)を設定する

LogBlueprint:Warning: [compiler メニュー] 警告 Event Reply Return Value should not be empty. Return a reply such as Handled or Unhandled. LogBlueprint:Warning: [compiler メニュー] 警告 [0074.05] メニュー のコンパイルに成功しましたが、1 個…

キーボードだけでウィジェットを操作する・2

妹「昨日のやつにカーソルの上下移動を付け加えてみたよ。そして一番端からさらに端の方に動かそうとすると、反対側にワープするようにした」妹「だいたい昨日のと同じだけど、縦横に動くわけだから、兄がモニョモニョ言ってた二次元配列の作り方を参考にし…

キーボードだけでウィジェットを操作する

妹「アクションゲームだとマウス使わないのに、ウィジェットのだけとこだけマウスで押さないと駄目なのは困るから、自分で操作できるようなボタンを作った」妹「本当はボタンを押した時と押してない時の、へこんだような絵とかにしたかったんだけど、上手く…

自作マウスカーソルが遅れてついてくる問題

妹「気のせいかなとも思ったんだけど、昨日作ったカーソルって、本物マウスカーソルにくらべてちょっと遅れてるような気が」「遅れてる。元々マウスカーソルはゲーム側じゃなくて、WindowsとかのOSで制御してるんだけど、OSの仕組みの中でもめちゃくちゃ優先…

自作マウスカーソルをウィジェットとして表示する

※現在はもっといい方法が見つかっています imoue.hatenablog.com妹「カーソルの方もだいたいわかった。GetMousePositionScaledByDPIというのを使うと、DPIを計算した後の場所が出てくる。ような気がする」「あとカーソルの位置もかな。標準だと動かす側のCan…

ウィジェットを任意の場所に動かす方法・その2

「それでウィジェットの表示位置を指定する方法なんですけど……」妹「もう出来たよ」「そ、そうなんだ」妹「昨日までは動くかどうかわからなかったからあれだけど、動くとわかるとだいぶやる気が出てきた。そしたらなんか出来た」「ちなみにどういう方法で?…

ウィジェットを任意の場所に動かす方法・その1

「ウィジェット動かす方法がわかりました」妹「動いたの!? もうこれ全然動かないから、ActorとTextRendererでなんとかしようかと思ってたよ。まあそうすると今後は日本語が出なかったんだけど……」「色々見てたらカーソルの動きに合わせてウィジェットを動…

引き続きウィジェットいじってみたけど特に進展はなかった

妹「あの後別のウィジェットとして同じ様にテキストのあるやつを作ってみたんだけど、やっぱりデフォルト値を無視して空っぽになっていた。最初はこんな風になってなかったというのがやっぱり勘違いで、元々こんな動作だったのかな」「この問題はウィジェッ…

ウィジェットブループリントのデフォルト値が上手く反映されない問題

妹「キャラクターのセリフを吹き出しで出そうと思ってて、色々やってるんだけど、なんだかそれ以前の問題が起きてしまった」「"ここは"って言われても……ここはどこなの?」妹「どこかを書こうとしてるんだけど、それがさっぱり反映されないのが問題なんだよ…

体力をハートマークで表示する・その3

妹「もしゼルダみたいにハートが1/4ずつ減らせるようにしようとしたらどうなるの? HPを0.25ずつ減らすの?」「そうじゃなくて、HPの計算を4倍にする。最大HPと、くらうダメージと。10段階あるんだったら同じように10倍する。とにかく1が最小の単位になるよ…

体力をハートマークで表示する・その2

「昨日の続きの、どういう仕組みで表示を切り替えるかって話なんだけど、HPが1の時はハート1がTrueで、ハート2がFalseでって、全部分岐作ってもいいけど原始的すぎる。基本的には計算で、HPの上限が増えたりしても対応出来るようなブループリントにしたい………

体力をハートマークで表示する・その1

妹「ぷちコンのやつ作り始める前に何やってたのか思い出してたんだけど、なんかウィジェットで体力表示を作ろうとして行き詰まってた気がする」「今だったらウィジェットの調査が進んだから作れるのでは?」妹「いや全盛期だったらそうかもしれないけど……」…

ラブ・エネミーのゲームオーバー演出の作り方

妹「そういえば兄が作ってたゲームの、GameOverの字がグルグルって出てくるやつはどうやって作ってるの?」「あれはウィジェットなんだけど、ウィジェットを動かす方法は知ってる?」妹「画面外から動かしてくるのは見たことある」「それとだいたい同じ原理…