虎参備忘録~輪講編-003~

今回の輪講は留学生との共同プロジェクトで、UE4を使って実装したFlockingのAIについて紹介します。

このサイトを参考にAIを組んだので、今回はこのサイトを使って、プロジェクトを見せながら話て行きたいと思います。

 

サイト内にも書かれていますが、先にざっくりとFlockingについて説明しておくと、「分離」「整列」「結合」の3行動からなる操舵力をあわせて、群れのような動きを再現するアルゴリズムです。

 

「分離」は、そのオブジェクトの持つ領域内にいるほかのオブジェクトから離れる操舵力を作ります。

「分離」の力が強いほど、オブジェクト同士の距離は離され、バラバラに動きます。

 

「整列」は、そのオブジェクトの持つ領域内にいるほかのオブジェクト達と同じ方向、同じ速度になるような操舵力をつくります。

「整列」の力が強いほど、イワシの群れのようなある程度まとまった集団を作りやすくなります。

 

「結合」は、そのオブジェクトの持つ領域内にいるほかのオブジェクト達の中心に向かう操舵力を作ります。

「結合」の力が強いほど、集団の密度が増します。

 

さて、簡単に説明したところで、プロジェクトを見せながら解説したいと思います。

 

 

最後に、Flockingはパラメータの調整によって大きく見栄えが変わります。

パラメータをうまく調整できれば様々な群の動きも表現出来るでしょう。

大元のプロジェクトはサイトにあるので一度自分でいじってみるとより理解が深まると思います。

虎参備忘録~UE4編‐007~

英語版を基準に書いています

箇条書き注意

UE4@5/27-ペーパーニンジャを作る(12章)

 


入力マッピングの追加はProject Settings > inputのBindingsで行う。

入力マッピングには

デジタル入力を扱うActionMappings(押した時や放した時にイベントが呼ばれる)

マウスの移動量やアナログスティックなどの入力を使うAxisMappings(Tick並みに呼ばれている)

の2種類がある。


続きを読む

虎参備忘録~輪講編‐002~

 

今回の輪講は前回の続きと前回の内容をセンサー(トリガーボックス)で実装したいと思います。

 

 

今回は、床を開閉式の落とし穴にしたいと思います。

前回とは別の床を選んでクラスブループリント化し、編集画面を開きます。 床のムーバブルは忘れずに。

落とし穴などはトリガーで感知するタイプのほうがいいとは思いますが今回は[Tick]で実装します。 前回の分はトリガーで作り直すのでそれを参考に考えてみてください。

 

[TimeLine]を設置し、トラックを作成します。 今回はfloot trackを追加します。

時間の長さは各自お任せ、高さは-90で下図のような形に作ってください。 最後にループのチェックを忘れずに。 画像はクリックでの表示推奨です。

資料011

続きを読む

虎参備忘録~輪講編‐001~

 

今回の輪講はブループリントでタイムラインを中心に行いたいと思います。今日は途中まで行い、続きは木曜です。

二回通しての目標は横スクロールのサンプルを使用して様々なゲームっぽいギミックを追加することです。

まずはサンプルの2D Slide scrollerを作成してください。 使っていたサンプルがあるならそれでもかまいません。

 

準備ができたなら、新しいレベルを作成します。

新しいレベルを作成したらフォルダを適当に作って、そこに名前を付けて保存します。

次に、次回もこのレベルは使うので、今作ったレベルをエディター起動時に開くレベルとゲーム実行時に最初に呼び出されるレベルに設定します。

資料001

上の画像の場所を開き、下の画像のように行います。 下のほうは見難いと思うのでクリックして大きい画像を表示してください。

資料002

赤の①、②の順にクリックし、先ほど名前を付けて保存したレベルを選択します。 同じように一つ下の欄も行いましょう。

それぞれ上がゲーム開始時、下がエディター起動時の設定です。

変更した後に設定を保存する、なんてボタンはないのでそのまま設定画面は閉じてください。

続きを読む

虎参備忘録~UE4編‐006~

英語版を基準に書いています

箇条書き注意

UE4@5/16-ペーパーニンジャを作る(10章残り)

 


Project Setting > Maps & ModesのDefault Modes > Default GameModeでゲームモードの標準設定がいじれる


Blueprint Editorを開きAdd ComponentからCamera及びSpring Armを追加する

CameraSpring Armにドラッグ&ドロップで親子付けする

Spring ArmのCamera > Target Arm Lengthにプレイヤーとカメラとの距離を入力する

あとはカメラの角度を変えたり、Spring Armをバネのままかただの棒にするかなどを設定する


続きを読む

虎参備忘録~UE4編‐005~

英語版を基準に書いています

箇条書き注意

UE4@5/13-ペーパーニンジャを作る(8章残り)

 


Window>Layersからレイヤウィンドウが出せる

Shift + Eで選択したものと同じアクタを全選択できる

Zファイトを防ぐにはスケーリングを変える

Ctrl + Gでグループ化/解除を行える


 

続きを読む

虎参備忘録~UE4編‐004~

英語版を基準に書いています

箇条書き注意

UE4@5/09-ペーパーニンジャを作る(8章残り)

 


レベルストリーミングに合わせて、サブレベルのロードタイミングを変えることができる


DetailsのActor>Convert Actorから対象を変換できる

BlockingVolumeに変えると見えないコリジョンとなる


Alt + ドラッグで増やす時にShiftを押しながら実行するとカメラが追従する


ModesのVolumes>Blocking Volumeで一からBlockingVolumeを作ることができる


編集・執筆 小栗  悟

虎参備忘録~UE4編‐003~

英語版を基準に書いています

箇条書き注意

 

UE4@5/06-ペーパーニンジャを作る(7章残り)

 


materialを割り当てるとき、StaticmeshEditorContentBrowserを出すことで素早く探し出し、割り当てることができる

アセット参照文字列があるとき、それをコピーしてElementにPasteすることで即座にmaterialを割り当てることができる

ElementHighlightにチェックを入れることでElementの適用部分を見ることができる


アセットをエクスプローラから移動や削除、名前の変更をしてはいけない


 

続きを読む

虎参備忘録~UE4編‐002~

英語版を基準に書いています

箇条書き注意

 

UE4@5/02-ペーパーニンジャを作る(7章)

 


import(インポート)で素材を追加

texture(テクスチャ)からmaterial(マテリアル)を作成

StaticmeshEditorstaticmesh(スタティクメッシュ/頭文字SM_のモノ)にmaterialを割り当てる

続きを読む