【UE4】レベルが開けないバグへの対処

おはようございます、旺海ちせです!

今回の記事は進捗というより修復みたいな作業で
ユーザー向けというよりも開発者向け…及びUE利用者向け…

および自分用のメモみたいな記事となります。

こういう事は似たような事態になった時に
忘れてしまったりするので普段メモっておいたりしています。

レベル(MAP)を開こうとするとフリーズする。

今回起きた現象はレベルを開こうとするとフリーズし
UE4がクラッシュするというものでした。

まずは制作したレベルを一つずつチェックしてみたところ
フリーズするレベルとフリーズしないレベルが存在していました。

実はこれ以前にも似たような現象が起こっており
そのときは一部の敵キャラのブループリントが原因でフリーズをしていました。
こちらはその敵キャラのデータを削除し、もう一度組み直すことで
復旧したのですが、設定をし直す程度のものでしたので
大した作業量では有りませんでした。


■疑った箇所その1"レベルブループリント"
レベルブループリントはそのレベル(MAP)に処理を書けるもので
通常のアクションゲームですとタイムの設定だったり、
ステージクリアのルールなどを設定したりします。

こちらに関してはフリーズするレベルと開くことが可能なレベルの
多少設定する数値が違っていましたが基本的にどちらにも
同じ処理を書いてたりしていたので仮としてシロとしました。


■疑った箇所その2"メッシュ(地形のオブジェクト)"
次に疑った箇所はメッシュ、及びマテリアルとなりました。
こちらは地形を作っていてる岩や草木、水などの見た目の部分です。

いろんなメッシュを疑ってみましたが、一番メッシュを配置していない
ほぼまっ平らなテスト用MAPが開けず、さらに唯一置いてある岩のメッシュは
他の開くことができるレベルにも置いてあったので早々にシロとしました。


■疑った箇所その2"キャラクター(プレイヤーキャラやモンスター)"
キャラクターは自分で動いたり、処理を書くことが出来るやつです。
表題通り大体はキャラクターやモンスター、動物などで使用される
ブループリントです。

こちらは前科があるのでかなり疑ってます。


さっさと吐くんだ。
田舎のおかーさんも泣いているぞ。
カツドン食うか。


まずは各レベルに配置している敵キャラを思い出しながら
開くレベルと開かないレベルにどの敵キャラがいて、
どの敵キャラがいなかったかを記憶力をたよりに参照します。
脳をフル回転させ、どんな配置だったか集中します。

ちなみにあとから気づいたのですが、
配置する敵キャラはシートにメモってありましたので
脳をフル回転させる必要性は全く有りませんでした。


すると、ある一人の容疑者が浮上しました。

いぬドッグ容疑者です。


容疑者はクラッシュを起こす全てのレベルに存在し、
普通に開けるレベルには全く存在していませんでした。
早速いぬドッグ容疑者のブループリントを開きます。

結果は・・・クラッシュ!

この時気づいたのですが、敵キャラのブループリントを
一個ずつ開けばどれが原因かがすぐ分かったはずですので
やはり脳をフル回転させる必要性は全く有りませんでした。


後処理
結果的にこのいぬドッグというキャラの
アニメーションデータがエラーを発しているのが判明したので
そちらを作り直すこととしました。

エラーそのものの原因は正直な所分かっていません。
ここ数日はUIの画像などを作っていまして
敵キャラ関係を触ることはほぼなく、
特にレベルが開けなくなったということはなかったので…謎です。

キャラクターのブループリントの一つくらいですと復旧は楽でいいのですが
レベルを作り直すとなるとちょっと状況が変わってきます。
あの広大な3D空間のフィールド(複数)を復旧させるとなると
半月くらいの作業量が必要となります。

血の気が引いてしまいます。
引いていました。

ということで半月は回避しましたが
復旧作業へと費やすこととなったまる一日でした



おやすみなさいませZZzzz...

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

記事のタグから探す

月別アーカイブ

記事を検索