【初心者】Paper2D横スクロール

アンリアルクエスト3で横スクロールのゲームを扱うということなので、Paper2Dのキャラクターで少しだけ作ってみました。今のうちから少し作っていこうと思います。
このブログでは作っていくうえで学んだことをまとめています。

Paper Character for Unreal Quest 3

Blueprint

BP_MyPaperCharacter

Event Graph

BP_MyPaperCharacter posted by anonymous | blueprintUE | PasteBin For Unreal Engine
No description provided

Update Flipbook Animation

Update Flipbook Animation(Function) posted by anonymous | blueprintUE | PasteBin For Unreal Engine
No description provided

BP_MyCameraActor

BP_MyCameraActor posted by anonymous | blueprintUE | PasteBin For Unreal Engine
No description provided

BP_EnemyController

BP_EnemyController posted by anonymous | blueprintUE | PasteBin For Unreal Engine
No description provided

👇ほぼ、この動画の内容です。

Getting Started with Your Paper 2D Project | Course
We will gain an understanding of exactly what Paper 2D is, what tools it provides, and how it can help us realize a 2D based game in Unreal Engine.

Flipbook作成

岩棚。
Paperスプライトアクタで作られている。
これもプラグインで追加されたもの。
(関連)
Event On Walking Off Ledge

落ちるときのイベントを設定できるノード。

インポート後、右クリックのSprite ActionからApply Paper 2D Texture Settings を選ぶ。
圧縮や、LODの設定が変化する。

UserInterface2Dにする。

Mip Gen Settingsを、NoMipmapsにする。
距離に応じて、テクスチャーを切り替えない。

テクスチャーの特定の色を、透明にする。
テクスチャーのAdjustmentsで変更。
Chroma Key Textureにチェックをいれて、
Chroma Key Colorでスポイトをして、透明にしたい色を選択。

テクスチャー作成。

Extract Spritesでスプライト作成。Glid256*256でつくった。
👆少しサイズが大きいかも。64*64でも良さそう。
作ったスプライトを複数選択して、右クリック、クリエイトFlipbook

タイルマップ作成

テクスチャーを右クリック。Create Tile Set。
床などをつくるのに使うもの。32×32がデフォルト。マージンなどを計算してテクスチャーを作成する。

エッジの上でShift + 左クリック
Deleteで削除。
コリジョン作るのかなり面倒。暇つぶしの何かを用意しておくべき。

タイルセットを右クリック。Create Tile Mapを選択。

Foreground(前景)
Middle(中央)
Background(背景)
などのように分ける。
コリジョンの厚みなど各レイヤーごとに調整できる。
レイヤーの順番に注意。上にあるものほど、前面に表示される。

Shift + ドラッグ

Editor Preferenceで、powerと検索。
Use Power of Two Snap Size にチェックを入れる。スナップしやすくなる。テクスチャーは2の累乗で作ってあるから。

タイルマップをドラッグしてレベルに入れる。

2Dプレイヤー作成

ブループリントで、PaperCharacterを検索して作成。
基本的な編集はRightかつUnlitでするのがやりやすい。必要に応じてPerspective。
Spriteコンポーネントを選択して、DetailsパネルのSource Flipbookに、Idle状態のFlipbookを入れる。
カプセルとSpriteの大きさを合わせる。ここではカプセルを32×20で作った。脚の位置には特に注意。僕はSpriteの解像度を上げて作ったので、Scaleを調整してSpriteの大きさを小さくした。
SpriteのRotationをWorldにする。

右クリック>Blueprint Class> ALL CLASSES>Camera Actorを選択。
X方向にのみ追従するカメラを作成した。
Projection Mode を Orthographic(正射投影)に変更する。

KISMET_MATH_FORCEINLINE
void UKismetMathLibrary::MakeRotator(float Roll, float Pitch, float Yaw)
{
     return FRotator(Pitch,Yaw,Roll)
}

順番の違いが面白い。どの軸を前方ととらえているかの違いなのかな。

初期状態ではワイルドカード。どんなタイプでも入れられる。
入力ピンを右クリックして、Change Pin Type を選ぶことで、入力ピンのタイプを指定できる。

Max Acceleration 1024
Gravity Scale 4
Ground Friction 3
Max Step Height 10
Walkable Floor Angle 46
Max Walk Speed 78
Braking Deceleration Walking 32
Jump Z Velocity 1024
Impart Base Velocity Y false

意味頂点

関連On Reached Jump Apex
ジャンプしたとき、一番高いところで行うイベントをバインドできるノード。

Ctrl + C

もしくは、showのボタンからコリジョンを選択。

スプライトのDetailsパネルのピボットモードで変更できる。

敵が倒れるときにボトムの位置から回転させるのに変更が必要だった。

敵キャラクター

NavMeshBoundsVolumeを作成、Pで範囲を表示できる。狭すぎると緑色に表示されない。緑色に表示されている部分が全くないと動けない。Volumeの中なら緑色になっていなくても動くことはできる。勢いあまってVolumeの外に出てしまって、元に戻れなくなるのが困る。
Volumeが狭すぎると動けないので困る。

コンテンツブラウザで右クリック。Blueprint Classを選択。ALL CLASSESで検索して作成。
敵キャラクターのBPを作成する。Detailsパネルにおいて、PawnのAI Controllerを先ほど作ったものに変更。
Auto possess AI を変更。Placed in World, Placed in World or Spawnedなど。

右クリック、Artificial Intelligenceから、Black Boardを選択。

右クリック、Artificial Intelligenceから、Behavior Treeを選択。

Behavior Treeの設定。

DetailsパネルのBlack Board Asset として、先ほど作ったものを入れる。

Behavior Treeの右上で、設定したBlack Boardと編集の切り替えが可能。

Black Board Key の作成。

Move to の目標などとして必要。

Twitterしてます

ブログの更新をお知らせ

コメント

タイトルとURLをコピーしました