はじめに
1ヶ月の締めくくりとして簡単な2Dゲームを作りたいと思っています。
前回昨日歩きまわれるステージができました。
今回はそれに少しゲーム性を加えて落ちたら死ぬ穴と拾えるコインを作ります。
1. タイルセットに落とし穴ゾーンを作成し落ちたらリスタートする
- 参照元 マップの修正の参考www.youtube.com
- 落とし穴に落ちた際の挙動www.youtube.com
How do I make a player death or level reset in blueprints?
Hello all. How possibly do I set a simple level reset in gameplay mode? im using blueprints, ans say you fall off the map. I want the character to fall off th...
- タイルマップを拡張して落とし穴ゾーンを作成
- 落とし穴に落ちた時にリスタートするために キルZボリューム を配置
- ブラシセッティングを修正してボリュームの大きさを穴のサイズに合わせる
- レベルブループリントを開く
- キルZボリュームに重なった時用のイベントを追加
- 2秒待ってから
- レベルを開く(New World)は今回作成しているMapの名前
- 結果 リスタート可能となりました。youtu.be
2. コインを置いてピックアップできるようにする
自キャラがコインと重なるとコインを拾ったという意味を込めて音を鳴らしエフェクトを表示してコインを消します
2.1 事前準備
2.1.1 コインを作成
素材はせっかくなのでBlenderで作成する
- 6フレームで180度回転するリングを作成
- 保存先でファイル名の接頭辞が設定できることを知る
- Coin というフォルダを作成し一連のアニメーションをするpngをインポート
- 全て選択して右クリックから スプライトを作成
- 作成されたスプライトを Sprites フォルダへ移動
- Spritsフォルダで作成したスプライトを選択して右クリック→フリップブック作成
2.1.2 音の用意
まずコインを拾ったときの音を準備
- こちらのサイトからコインを拾う音をダウンロード
taira-komori.jpn.org - mp3 を wav に変換する(ueではwavに対応しているため)
online-audio-converter.com - Soundsフォルダを作成
- 音をインポート
2.1.3 効果の用意
- せっかくなのでBlenderで効果を作成
- Sverchokというアドオンで作っています。Gistのアドレスを貼っておきますのでよければ使ってくださいSverchok.0.6.0.0 (637b868) | Blender.2.83.0 | StartEffect | 2020.07.15 | 21:18Sverchok.0.6.0.0 (637b868) | Blender.2.83.0 | StartEffect | 2020.07.15 | 21:18 - StartEffect
- 星の数、配置、回転、スケールなどがパラメトリックに設定可能です
- 画像をインポートして 2.1.1 コインを作成と同じ要領で StarEffect を Sprites フォルダに作成
2.2 コインBPを作成
参照元
前回作成した拾えるコインのBPに演出を付けていよう!
ken26u.hatenablog.jp
- Blueprints フォルダでブループリント作成。
- 名前: BP_Coin
- 親: Actor
- ダブルクリックで編集画面に入る
- PaperFlipBook というコンポーネントを追加
- Source FlipbookにはコインのSprites を指定
- Source FlipbookにはコインのSprites を指定
- Box Collision コンポーネントを追加
- シェイプで Flip(コインのアニメーション) と同じサイズになるように大きさを調整
- Box Collision の重なり検出時のイベントを追加
- Collision のプリセットを OverlapAllにする
- ノードをセットアップ
- イベント開始時に音をコイン取得音を鳴らす
- Set Flipbookを使って Flip Boox を星エフェクトに切り替える
- Delay で0.5秒次の処理に行くのを遅らせる
- コインアニメーションが 0.5 で完了するため
- Destroy Actorで自身を破棄する
- コンパイルして保存
2.3 マップに配置
- 適当にBP_Coinをマップに配置する
- プレイして確かめる
- 音がデカかったため BP_Coin の PlaySound 2Dから音量を0.2 に下げる
結果
youtu.be
最後に
穴とコイン取得ができる様になりました。次はタイトル画面とゲームオーバーとクリア画面がほしいですね。
メモ
- Googleで出てくるUE4のドキュメントへのリンクでたまにアドレスの一部が
ja//
のようにスラッシュが連なっている。いつまで経っても読み込み状態になるのでスラッシュを削除しなければならないhttps://docs.unrealengine.com/ja//Resources/ContentExamples/Paper2D/index.html
Blenderメモ
- Outputファイルではプレースホルダが使える事を知った
UE4 連番テクスチャインポート注意
- アニメーションpngが
anim_1.png, anim_2.png, ..., anim_n.png
のような命名規則だと、インポート時に anim という1ファイルとみなされファイル数分上書きするかUE4から聞かれる。anim(1)やanim__1 (←アンダースコア2つ) などとする必要がある
素材リンク
- ダウンロード素材 無料効果音で遊ぼう!
taira-komori.jpn.org
作成素材
星エフェクト
コイン
星エフェクトとコインはご自由に使ってください