[Unreal Engine] プロジェクトランチャーでパッケージ化する 2章 ~パッケージ化のバグについて~
パッケージ(Shipping)版なのにPrintString表示やコンソールコマンド受付などエディタ挙動をしてしまう問題の解決について
これは主にUE5で起こりうる問題で症状の内容は見出しの通り、Shipping設定でパッケージ化されたファイルにもかかわらず実際に動かしてみると開発者向けのPrintStringが左上に表示されたり、ボタンを押すと下の画像のようにコンソールコマンド入力画面が出てきてしまったりすることがあります。
それだけでなく内部処理もShipping時と異なっており、さらにヒッチ(コマ落ち)も発生しやすいというもの(エディタの挙動に似ています)で、これは通常無視できません。
この現象はOSやVisualStudioの再インストールなど(条件は分かりませんが)ふとしたきっかけで起こるかもしれません。それで解法を求めてUnrealEngine公式フォーラム(EpicGames Dev Community)に質問を投げたのがこちらです。(一応リンクを張りますが、内容をスキップして読み進めても大丈夫です。)
日本語フォーラムではこれだけですが、英語のフォーラムでは同様の質問がちらほら見られました。(下のリンクはあくまで一例です。スキップ可。)
確実な(と思われる)解法は日本語の方の下の方にあるC++ファイルを追加する方法になります。ただし、これにはVisualStudio2019が必須なので、まだインストールされていない方はそちらのインストールが先になります。(同様の症状がある方でVisualStudio2019が既にインストールされている場合は本章最後の「C++ファイルの追加」までスキップしてください。こういった症状のない方は、予備知識としてこのような症状が出たときにはこのC++ファイル追加作業がほぼ必須だということを頭の片隅に置いておいてください。)
Visual Studio Community 2019(無料)のダウンロード方法①
残念ながらこちらは筆者は未検証ですが、ランチャーからVisualStudio2019をインストールできるらしいです。
上記の記事の「2」にダウンロード方法が書かれていますので(「1」でVisualStudioが入っているかいないかの確認ができます)、そちらを参考にインストール開始してみてください。
もしうまくいかない場合は、私が自力で試した次の方法で進めてください。
Visual Studio Community 2019(無料)のダウンロード方法②
マイクロソフト公式の
以前のバージョンの Visual Studio のダウンロード - 2019、2017、2015 以前のバージョン (microsoft.com)
にアクセスし、
>2019
の部分を開いてマイクロソフトアカウント(※こちらが必須になりますのでもしも無い方はアカウントを設定する必要があります… )にサインインします。
Visual Studio Dev Essentials(名前必須)の登録を済ませ、(残念ながら、登録時のスクリーンショットは撮っていませんでした… )
Visual Studio Community 2019(無料)をダウンロードし、(もし見つからない場合はVisual Studio Community 2019で検索してみてください)
そのダウンロードしたファイルからインストールを開始します。
※個人の初心者の方を想定して記事を書いているので、個人使用無料のCommunity版をおすすめし、こちらのバージョンのみを取り扱い、進めていきます。他のバージョンに関しましては、すみませんが、ご自身で調べていただきますようお願い申し上げます。m(_ _)m
Visual Studio Community 2019のインストール
VisualStudio2019でのインストール内容はこちらの記事が参考になるでしょう。VS 2019 Ver 16.11.22 (2022/12/23) 以降から変わった部分があるようなので、それ以前にインストールした方は次回から注意が必要です。
(下の記事で「VS 2019 Ver 16.11.22 (2022/12/23) 以降」を検索すると出てきます)
当方の環境(Win11、UE5.0.3)では .Net Runtime 5.0や .Net SDKのチェックは必須ではありませんでした。代わりに
の.Net Runtime 6.0で動いていました。
Out of support(サポート対象外)の文字の入った「.NET Core 3.1 Runtime」オプションは必須でした。
これがないと通常のパッケージ化ボタンの下の欄に
「エラー情報:プラットフォームのSDKの状態がターンキーから返されませんでした」
と表示されて、UnrealEngineがパッケージ化に必要なSDKを検出・認識しません。
C++ファイルの追加
上記2つの方法でVisualStudio2019をインストールしたら、いよいよC++ファイルを追加する方法で問題解決に臨みます。
下の記事は私がフォーラムに投げた質問の回答として提示された記事そのものです。こちらを参照し、(バグに対する魔除けのようなものとして😅)C++ファイルを追加しましょう。
これで、解決することができますが、
C++ファイルを追加しないで解決するもう一つの方法もあります。
それはプロジェクトランチャーです。
(英語の方のフォーラムでこのツールの存在を知りました。感謝。)
https://forums.unrealengine.com/t/unreal-printing-string-in-shipping-and-also-collisions-are-visible/715170
次章はこちらのツールの使い方を紹介致します。
・・・・・・
この記事役に立ったよ!という方は「いいね」などよろしくお願いします。
---------------------------------------------------------------------
1章
[Unreal Engine] プロジェクトランチャーでパッケージ化する
~パッケージ化テストについて~
https://note.com/yu_rien/n/n3460087e16ba
3章
[Unreal Engine] プロジェクトランチャーでパッケージ化する
~プロジェクトランチャーを使う~
https://note.com/yu_rien/n/nf892f6d1182c
4章
[Unreal Engine] プロジェクトランチャーでパッケージ化する
~パッケージ化イテレーションの高速化~
https://note.com/yu_rien/n/n856544412f37
---------------------------------------------------------------------