へきらくおきらく

Unreal EngineやSingle Board Computerでのゲーム開発メモ

第11回ぷちコン「燕天」ゲーム部分の仕様

Unreal Engine 4(以降UE4)を使った2日間のゲームジャムに参加してきました。

【3/16(土)-3/17(日)】第11回UE4ぷちコンゲームジャム | Peatix

 

担当したメインゲーム周りの仕組みについて、

絵や文字で表現しやすいものになったと思ったので書いてみました。

あとはあとで自分で思い出すときのメモです。

UE4の話はあんまり出てきません。

 

説明のため成果物の動画をご覧ください。


【第11回UE4ぷちコン応募作品】燕天

 

操作部分せつめい

動画を見ていただいたあと、以下の図を見ればだいたいわかります。

プレイヤーは円を描くように移動できます。

f:id:wakanya:20190321185329p:plain

基本的には緑のエリアを移動でき、

加速リングを取得して一定以上の速度で赤いエリアも移動できるようになります。

ここまでは、ゲームジャム初日のブレストで方針が決まりました。

方針決定手法については、チームメンバーのブログを参照してください。

【UE4】第11回ぷちコンのぷちコンゲームジャム - 若草なずなのノート

 

方針決定会場:

 

以降は好き放題実装したり触りながら決定した後付仕様です。

まずは、左右の移動、ループ移動に速度制限をつけました。

f:id:wakanya:20190321185338p:plain

これは、以下のように回るだけの動きとなってしまい、

アクション性がなくなってしまうと考えたためです。

 

次に、加速リングの配置です。

手触り的に以下の箇所にリングを配置することで、

連続的にループを行いやすいことがわかったので、

4箇所にリングが出現するようにしました。

f:id:wakanya:20190321185343p:plain

 

マップにリングを直接置いてステージを作成する時間が無かったので、

自動で配置するようにしました。

配置は0.35秒ごとに4箇所のどこかにスポーンさせているだけです。

f:id:wakanya:20190321193145p:plain
無限ループ警察コナイデ

SpawnSpeedRingの中身は、

以下の図のようにプレイヤーの前方に設定したスポーン位置から

スピードリングをスポーンできるようになっています。

f:id:wakanya:20190321185031p:plain

 一定の距離からスポーンすること、プレイヤーの速度が変化することで

プレイヤーの速度が遅いときはリングを取りやすく、

逆に早いときはリングを取りづらくしています。

 

残像部分と獲得得点の仕様せつめい

「きれいな円を書くと得点が高い」を実装するための仕様を説明します。

きれいな円の判定には残像のエフェクトが関係していますので、

まずは残像を説明します。

 

残像のエフェクトは、

「ループ判定になったときから一定時間、毎フレーム残像メッシュを1つ配置」

です。かっこいいトレイルなんてつくれる能力がなかった

f:id:wakanya:20190321200415p:plain

1つの残像メッシュは以下の図のような機能があります。

f:id:wakanya:20190321185522p:plain

相対位置をキープしているのは、画面上に「えん」を描けたことをわかりやすくするためです。

 

続いて得点計算です。

毎フレーム、残像メッシュを配置すると

円周上に点々とエフェクトが配置されます。

そこで「1つ前フレームに発生したエフェクトとの距離」を得点に加味しました。

f:id:wakanya:20190321185049p:plain

単純な座標距離だけでは、

1周ループした場合とループを途中で止めた場合で

あまり差がでなかったので、累乗させました。

 

エフェクトが出る一定時間が終了したときに、

出した残像から獲得得点の計算を行い、得点加算処理を発火します。

 

以上でございます。

その他の工夫

  • 速度によってカメラを引くと同時に画角も変えています
  • 微妙にプルプルしているので空気中を飛んでる感があります
  • 翼から飛行機雲トレイルが出ています
  • かっこいいのでその場でローリングできます