TAKEO

TAKEO

3Dブロック崩しをリリース!

ゲーム「3Dブロック崩し」をリリース

Google Playに3Dブロック崩しをリリースしました!一般的なブロック崩しを3Dで表現してみました。ブロックや空間が3Dになり、プレイヤーはTPSの視点で遊ぶことができます。

開発した感想

本ゲームはゲームエンジンにUnreal Engine 5.4を採用しました。現時点で最新版のエンジンになります。

開発時にこだわったこと

  • C++を一切書かないことにした
    • Buleprint(ブループリント)でどの程度開発できるのか試してみたかった
      • 不自由なく開発することができた
      • スタンドアローンなゲームならC++書かなくてもよさそうな手応えを得た
  • Chaos Destructionを使った
    • 今回ブロックの破壊アニメーションは全てこの機能を使っています
      • ガラスが割れる表現など
    • 細かくしすぎるとモバイルだと描写が重いことがわかりました
      • 2段階(Level 2)が限界かな、Level 3以降はきつい
  • アセットに金を使わない
    • オブジェクトやサウンド、BGMには一切お金を使わないことにしました
      • 自然音
      • suno.com
        • 音楽を作ってくれる生成AIです!プロンプトから指示すると音楽を作ってくれます。本作の各ステージのBGMは全て生成AIにつくってもらいました。

大変だったこと

Unreal Engine 5.4で初めてモバイルゲームを作ってみて、苦労したことを列挙していきます。

  • Google Play アプリの対象 API レベル要件に対応すること
    • 新規リリースする際にはAndroid 14(API レベル 34)以上である必要がある。
      • Unreal Engine 5.4でjdk(Java)ndkを適切なversionに設定するのが大変でした。公式ドキュメントの通りに設定するとAPIレベルが33になってしまいます😹
  • PIEで実行している時には問題ないのに、実機で動かすとエラーになる場合がある
    • 開発をある程度進めてから実機に繋ぐと、これ動かないじゃんってなることが多かったです
  • Niagaraがモバイルで機能しない
    • UE5.4ではビジュアルエフェクトにデフォルトでナイアガラシステムを使用しているアセットが多いです。全てではありませんが、モバイルで機能しないエフェクトも中にはありました。ナイアガラを使用しているアセットの設定をいじるのが面倒くさかったです。
  • モバイルのライティングが暗い
    • PIEで実行している時と実機で実行している時の明るさが全然違います。PIEをモバイル用に設定しても改善できなかったので実機を使いながらライティングするハメに😹
  • ストレージ周り
    • 本ゲームでは、ゲームの結果をAndroid端末のローカルファイルに保存しているのですが、Google Playにリリースする時に権限の問題を解消するのに手間がかかりました。
      • 権限を外してあげないと、Google Playで面倒な作業が待っています。なんとか回避はできたのでよかったです。
    • 実機でローカルストレージが使えない問題にも遭遇しました。パーミッションが無いやらとかで。
      • Javaやndkのversionを変更するなどして対処できました。