読者です 読者をやめる 読者になる 読者になる

妹でもわかるUnrealEngine4

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

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

OpenAssetOrgのアセットで2Dゲームを作る⑪ 敵キャラクターの移動

「敵の移動、っていっても、ただ横に動くだけのシンプルなやつなんだけど」 「こういうコンポーネントを作って、王様のPawnにくっつけた。今回の制作では色んな処理をコンポーネントとして作ってみたいという目標があるので、移動処理は全部コンポーネントに…

数字の足りない桁をゼロで埋める方法「Right」

妹「こういう感じで、時間とか表示する時に、数字がひと桁だったら0を入れて表示したいことって、よくあるんだけど……」妹「今回は色々考えた結果、文字列を加工したらいいのでは? と思って、そういうブループリントを組んだんだけど、もっと良い方法あるん…

Lerp をさらにもっといい感じにする Ease

妹「数字をいい感じにしたいんだよ。上手く説明できないんだけど、とにかくいい感じに数字を変化させたいというか」「それはEase的な話かなあ……」[UE4] 動きに緩急をつけるEaseノードの紹介 | historia Inc - 株式会社ヒストリア「AとBをAlphaのピンをつなぐ…

小さい時ほど数字を大きくする・Larp と NormalizeToRange 応用編

妹「小さい時ほど大きくなるような数字が欲しいんだよ。こう、スピードが遅い時は大きい数字になって、速い時ほど小さい数字になるのがいいんだけど」「なんだかよくわからんけど、たぶん昨日の応用の話のような気がする」 「Lerp は、A と B の数字を入れ替…

エビフライを反復横跳びさせる

「エビフライのジャンプ方法についてこのところ悩んでて、CharacterMovementを使うかとか、スプライン関数はどうかとか、色々考えてたんだけど、最終的にこの本のアルゴリズムを使うことにした」 アクションゲームアルゴリズムマニアックス : 松浦 健一郎, …

配列の中からランダムで1つ取り出す

「昨日の記事で出てきた、敵配列の中からランダムで1つ選ぶというやつ、あれって他の方法が速いんじゃないかと気になったので、今日はその動作速度を比較する実験をやった」SHUFFLEノードを使うパターン RandomIntegerInRangeノードを使うパターン 「実験に…

空中を自動的に障害物を避けながら飛ぶプラグイン「DoN AI Navigation」

www.drunkonnectar.com「UE4の標準のナビゲーションシステムは、空中を浮いて移動するキャラクターには向いてない。じゃあ標準じゃないナビゲーションシステムを使えばいいのではないか? ということで今日紹介するのはこの、DoN AI Navigation」www.youtube…

CanWalkOffLedgeで崖から落ちない、崖の上で折り返す

妹「さらに調査した結果、CanWalkOffLedgeをFalseにすると、床からはみ出しても落ちないというか、そもそもはみ出さないようになることがわかった」「アクションだと落ちるのが普通だけど、アクション要素の無いRPGだと落ちないのが普通だからね。街中なら柵…

レトロゲームプロジェクトの研究③Snake編

imoue.hatenablog.com「今日は妹が特に困ってないので、先日のレトロゲームプロジェクトの研究の続きを」妹「いや非常に困ってはいるんだけどね。複数コリジョンのやつとか……」 ゲーム内容 赤いブロックを上下左右に動かして、星型のアイコン(食料)にぶつ…

全然無限じゃないのに無限ループと言われる問題

妹「パンチのボタンを押した時に、アニメーション中の特定のタイミングでだけ当たり判定を出したいんだけど、なんか無限ループだと言われるんだよ。タイミング的に1秒もないだろうし、全然無限じゃないよね?」「なるほど、これは見事な無限ループですな妹「…

下からジャンプで通り抜けられる足場・番外編(3Dの場合)

妹「ところでこのすり抜ける足場って、2Dの場合はこれでいいとして、3Dでやると変なことにならない?」「3Dといっても色々あるけど、全方向に自由に動けるゲームだったらあんまりこういう足場はないだろうね。でも動ける方向が限定されてて、見た目3Dだけど…

下からジャンプで通り抜けられる足場・その2(台地型)

妹「すりぬけるやつは、なんとなくわかったんだけど、ブロックみたいなやつじゃなくて、盛り上がったかんじの足場はどうやるんだろ? マリオ3とかにあったんだけど。あれは横に行くと通れるし、でも上からだと乗れるし、なんだか複雑そうな感じがする」「こ…

下からジャンプで通り抜けられる足場・その1

妹「アクションゲームだと、足場ってのは下からは通りぬけられて、上からだと着地出来る感じになってると思うんだけど、これはどうやって作ったら良いんだろうか」「こういう感じの足場かな」妹「そんなやつ。コリジョンで考えると、下から行く時はオーバー…

ブループリントを実行するのにかかる時間を調べる

妹「イベントティックで、配列の中身をループさせてチェックするとかやっていいのかな?」「やってもいいと思うけど、なんで?」妹「茂みとかもそうだけど、アクションが起こせるアクターの近くに行った時に、それとわかるような演出を出したいんだよ。で、…

二次元配列の作り方・その2

関連記事imoue.hatenablog.com妹「昨日言ってた、横幅を足したり引いたりして上下に動かす案なんだけどさ、あれだと横にいきすぎた時のループ処理とか出来なくない? 現在位置がどうなってるかわからないから、普通に1足すと次の段にカーソルがいっちゃうよ…

数字の範囲ごとに分岐させる

妹「点数に応じてランク表示みたいなのをしたい。10万点以上なら上級者ですみたいな。とりあえず5種類ぐらい。ブランチノードをいっぱいつなげば出来るとは思うんだけど、なんかもっと良い方法ありそうな気がするんだけど」「それはC++だとSwitchで書けるん…

配列の中身をランダムに取り出す(Randomが返す範囲)

「そういえば、こないだブループリント見てて気になったんだけど、これって配列の中身からランダムにGETしてるんだよね?」妹「そーだよ」「でもこれだと最後の1個が絶対に選ばれないと思うんだけど。何度やっても絶対選ばれないアクターがあるはず。ここは…

二次元配列の作り方

妹「配列って、タンスみたいに入れるとこが並んでるイメージでしょ? あれってたしか縦と横それぞれに並んでるようなのもあった気がするんだけど、作り方がわからないんだけど」 「二次元配列ね。そういう物もあって、C++なら作れると思うけど、ブループリン…

アクタをちょっとずつ目的地に近づける方法・もっと簡単版

「よく考えると、昨日のブループリントだと残りの距離のことを考えてないから、残り2cmしかない時でも5cm先までいっちゃうという問題が残ってる」 妹「途中でBlockされるから別に平気なのでは?」 「Blockだとそうなんだけどね。Overlapにして高速移動させる…

アクタをちょっとずつ目的地に近づける方法

妹「ヒット問題が解決したのはいいんだけど、ルートにSceneがないとMoveComponentToが動かないなあ」 「そもそもなんでコンポーネント動かしてたの? この場合アクタごと動かしてもいいのでは」 妹「コンポーネントを動かしたかったわけじゃなくて、MoveComp…