【Unity】WebGLにビルドできないエラーの対処法


WebGLにビルドできないエラーの対処法


結論
プロジェクトを引っ越しましょう!
(もしくは、クラウドビルドでビルドしましょう!)

Export PackageでAssetsフォルダの中身を書き出し、新規プロジェクトにインポートしちゃいましょう。
私の場合、これでWebGLにビルドできるようになりました。
※エクスポートの仕方がわからない方は、下記の説明を読んでください。

また、クラウドビルドでエラーを回避したという情報もありました。
クラウドビルドのやり方は、「unity クラウドビルド」とかで調べてみてください。

エラーについても色々と調べてはみましたが、根本的な解決方法や原因はわかりませんでした。
どうもIL2CPPが怪しいようですが、どのタイミングで壊れてしまっているのか見当がつきません…。
一応エラーの詳細についても載せておきますので、ご自身の状況と合わせて確認してみてください。

エラーについて


WebGLのビルドを実行すると、ここらへんで固まります。IL2CPPって書いてありますね。

しばらく待つと、そのままビルドが終わったと見せかけてきますが、WebGL関連のファイルは何も生成されていません。
そして、Consoleにはこのようなエラーが出ていました。

「Exception: C:\Program Files\Unity\Editor\Data\il2cpp\build\il2cpp.exe did not run properly!」とあります。
やっぱりIL2CPPがおかしいっぽいですけど、このメッセージだけでは正直お手上げでした。

このエラー、PC環境依存ではなくプロジェクト依存っぽいです。
ビルドに失敗した人(別の人)のプロジェクトを私のPCでビルドしてみましたが、同じエラーが出てしまいました。
私のPC内の別プロジェクトは普通にWebGLにビルド出来ていたため、プロジェクト自体が悪いっぽいです。
じゃあもうプロジェクト作り直すしかないじゃん!
ということで、新規プロジェクトにお引越ししたところうまくいった次第です。

お引越しの方法(unitypackageの作り方)


新規でプロジェクトを作成して、Assetsフォルダの中身を丸ごとお引越しする手順です。

■バックアップ

まず、何よりも先に プロジェクトのバックアップをしましょう!

プロジェクトフォルダを複製するだけでもいいですし、リモートリポジトリに上げてもいいです。
取り返しのつかない事態になることだけは避けなければなりません。

■エクスポート

バックアップができたら、今あるプロジェクトでAssetsフォルダのエクスポートを行います。
メニューバーの「 Assets → Export Package… 」を選択。

All 」で全てのアセットにチェックを入れて、「 Export… 」をクリックします。

ファイル名を決めるように言われるので、わかりやすい名前(プロジェクト名など)を付けてください。
これで「.unitypackage」という拡張子のファイルが作られます。(ファイル名.unitypackage)
このファイルは、エクスポートしたアセットが圧縮されているものです。アセットストアでもこの形式で配布されていたりしますね。

■インポート

新しいプロジェクトを作成したら、アセットのインポートを行います。
新しいプロジェクトのProjectビューに、先ほど作成したunitypackageのファイルをドラッグ&ドロップします。
(もしくは、メニューバーのAssets → Import Package → Custom Package… から、インポートするファイルを選択します。)

パッケージ内のどのアセットをインポートするか聞かれるので、Allを選択して、Importをクリックします。

以上でお引越し完了です。
シーンを再生して問題が無いか確認してみましょう。問題が無ければWebGLへのビルドも試してみてください。
もしこれでも解決しなかったら、素直にクラウドビルドを使いましょう。

今月の新着記事

【Unity】Unable to parse YAML fileエラーの直し方
【知っておいた方がいい】UnityでWebGLにビルドできないエラーの対処法
【解けないとマズい練習問題】C# 練習問題 9

記事一覧にもどる

  • このエントリーをはてなブックマークに追加

PAGE TOP