Unreal Engine5でパッケージ化したビルド(.exe)のアイコン(.ico)を変更すると、パッケージ化に失敗したときの解決策を紹介します。
結論「 .ico 」ファイルの作り方を間違えるとパッケージ化に失敗します。
- ✕ アイコンファイルを(.bmp)で作成して拡張子を手動で(.ico)に変更
- ◯ アイコンファイルを(.png透過)で作成して「 ラッコ手帳PNG→ICO変換ツール 」を使用して(.ico)に変更
そこにあるのか?パッケージ化のアイコン
プロジェクトアイコンと紛らわしい
- UE5メニューバー → 編集
- → プロジェクト設定
- → プロジェクト → 説明 にそれっぽいアイコンを設定する場所がありますが、これはEpic Games Luncherからアンリアルエンジンのプロジェクトを一覧するときのアイコンであって、パッケージ化したビルド(.exe)のアイコンではありません。
- プロジェクトサムネイルがすでに作成済みの場合は設定すると非常に見やすく、プロジェクト一覧から選びやすくなります。
- 本命のパッケージ化したビルド(.exe)のアイコンを変えるには、プロジェクト設定の左のバーをずずいと下にスクロールして、→ プラットフォーム → Windows をクリック(自分はWindowsのみのビルド販売なのでWindowsですが、iOSやAndroidなどそれぞれ自分が販売するプラットフォームの項目を選びましょう。同じようなアイコンを設定する画面が表示されます。)
- エディタースプラッシュ(.bmp 720×370)、ゲームスプラッシュ(.bmp 720×370)、ゲームアイコン(.ico 256×256)を設定する画面が出てきます。これらの右端にある⋯ボタンをクリックするとWindowsエクスプローラーのファイル選択画面がポップアップするので、(Macの場合はFinderが開くのでしょうか?)それぞれの形式に合わせたファイルを選択しましょう
自分はプロジェクトアイコンを設定して、あれ〜なんかビルドアイコン変わってないけどまあいいか?くらいに思っていたのですが、Epicの審査員に、ビルドアイコン変わってないけどええの?と注意されて、せっかくの製品やし、アイコン変えるくらいすぐ終わるからやってみるか〜という感じでした。
アイコンファイルの作り方
ソフトはお好みで
自分は「 MediBang Paint(PC版の無料板) 」を使用してアイコンファイルを作っています。別途「 クリップスタジオペイント 」など画像編集ソフトはたくさんあるので、好みのものを使いましょう。
(.ico)ファイルはGoogle検索すると(.bmp)ファイルの拡張子を変えるだけでも作れるとのことだったので、それに従いましたが、それがパッケージ化失敗の悲劇へとつながるのでした。
アイコンを変えるだけと鷹をくくっていたのだが⋯
パッケージ化に失敗する
アイコンファイルを変えるだけなので、サクッと数分で終わると鷹をくくっていたのですが、エディタースプラッシュ(.bmp 720×370)、ゲームスプラッシュ(.bmp 720×370)、ゲームアイコン(.ico 256×256)をすべて変更して、パッケージ化を実行するとビルドに失敗してエラーメッセージが出現しました。
冒頭の結論の通り、アイコン(.ico 256×256)ファイルの作り方が間違っていたのですが原因を探すのに小一時間苦労します。
原因の特定にいそいそ
パスに日本語が含まれているのが原因?
Google検索すると、アイコン変更でパッケージ化ができないというEpicのフォーラム記事がヒットします。そこで、アイコン変更時に指定したパスに日本語が含まれているのが原因かもしれない、という情報を発見しました。
しかしパスをCドライブ直下の日本語を含まないパスからエディタースプラッシュ(.bmp 720×370)、ゲームスプラッシュ(.bmp 720×370)、ゲームアイコン(.ico 256×256)をすべて変更してもパッケージ化に失敗しました。
その後、アイコンファイルの作り方を変えて、成功したときも、念のため日本語を含まないパスから画像を指定しました。(参考までにどうぞ)
デフォルトに戻す
変更前はパッケージ化に、初回は15分、2回目以降は1分程度で正常に行えていました。
変更箇所はアイコンファイルの差し替えだけだったので、一旦デフォルトに戻します。デフォルトのアイコンファイルはアンリアルエンジンをインストールしたコンテントパスに保存されています。参考までにパスを画像で出しておきます↓
ちなみに自分は外付けSSDであるHドライブにアンリアルエンジンをインストールしているのでHパスから始まります。みなさんはおそらく大抵の人がCドライブにインストールしていると思うのでCドライブから始まるはずです。
1分で終わるパッケージ化が30分もかかる
アイコンをデフォルトに戻してパッケージ化を行ったのですが、1分で普段終わるパッケージ化が30分もかかってしまいました。
おそらくパッケージ化失敗による過去の履歴を辿らなくなったのか?はたまた1ヶ月ぐらいプロジェクトを立ち上げていなかったのか?どちらが原因かは分かりませんが、過去データを使わず新規でパッケージ化を行っている様でした。
時間はかかりましたが無事にパッケージ化が完了して、ビルドしたゲームも一応軽く正常に動くかを確認しました。
原因を切り分けてパッケージ化をテスト
1個づつ変更してパッケージ化
アイコンを変更してからプロジェクトを何度か終了→起動を繰り返していて、その際に、エディタースプラッシュ(.bmp 720×370)は正常に変更ができていたので、おそらくゲームアイコン(.ico 256×256)が原因だと狙いをつけつつも、1つ1つ変更してどの変更が原因でパッケージ化に失敗するのかを特定します。
ゲームスプラッシュは正常
ゲームスプラッシュを変更してパッケージ化すると無事に成功します。
ゲームアイコンで失敗
メディバンペイントで作成した(.bmp)を手動で(.ico)に変更したゲームアイコンに差し替えたところでパッケージ化に失敗しました。
これで原因が特定できましたね。
アイコンファイルを作り直し
信頼のラッコサービス
(.ico)ファイルを作るWebサービスは検索すると山の様に出てくると思いますが、自分は安定と信頼のラッコサービスの一部である「 ラッコ手帳PNG→ICO変換ツール 」を使用しました。
結果的に、このサービスで使用した(.ico)ファイルに、ゲームアイコン(.ico 256×256)を差し替えるとパッケージ化に成功しました。
無事にパッケージ化されたビルドフォルダを確認すると、(.exe)ファイルにアイコンが設定されて、起動も問題なくできました。(無いとは思いますが、ゲームの全動作を確認して全く同じかどうかの確認までは記事執筆時点ではしていません。)皆さんは製品として提出するなら、念のため全動作を確認しておきましょう。
もしくは全動作を確認する前の段階でアイコンを変更するような工程を組んでおきましょう。
また自分の環境の、SSDからの起動だとゲームスプラッシュが表示されるのが0.5秒くらいなので、無い方がスッキリするかと思いましたが、購入者の環境によってはロードに数十秒かかる可能性も考えて、ゲームスプラッシュも設定する方針に決めました。
パッケージ化する際はログを見る癖をつけよう
普段の積み重ねがデバッグ基礎力を上げる
今回のパッケージ化の失敗を経て、ふと思ったのが、普段のパッケージ化を行う際も、ログを見る癖をつけておこうということです。
今までは、パッケージ化を実行するボタンを押すと、割と長い待ち時間待たされるので、そのまま成功するまで放置して別の作業や休憩を挟むことが多かったのですが、今回の件で、原因を特定する際にログとにらめっこしたときに、赤い部分のエラーメッセージだけが原因だと思い、赤いエラーメッセージをとにかく追いかけて無駄な原因探しをしてしまいました。
普段から正常なパッケージ化プロセスのログを見ていれば、どこがどう違うのか?また使用しているアセットでテクスチャが見つからないなど、正常にパッケージ化できていても、黄色いエラーメッセージが出ていたことなど、細かな部分に気がつけるようになっていたと思います。
パッケージ化は初回が非常に長く15分くらいかかるので、それをずっとにらめっこしろ、とまでは言いませんが、2回目以降の短いパッケージ化のプロセスだけでも、普段からチェックする様にしておけば、後々のトラブルに対応する基礎知力がつくと感じました。
やや手間ですが、パッケージ化のログを見届ける癖をつけてみませんか?
宣伝
あそぽよ製ゲーム作品
惑星型オープンワールドの基礎土台となる作品「 惑星の創世神:フェリス(あそぽよ公式HP) 」がEpic Games Storeから発売されます。(1作品目の「契約の浮遊船」も、よろしくです。)
↓ Epic Games Store 製品ストアURL ↓
ぜひ興味があれば購入して遊んでもらえると嬉しいです。
コメント