WebGL 用のビルドを作成するには、Unity のメインメニューから File > Build Settings と移動し、Platform リストで WebGL を選択し Switch Platform をクリックします。
ビルド設定が完了したら、以下のオプションから 1 つを選択します。
WebGL の Unity ビルドシステムは、以下の設定に対応しています。
設定 | 機能 | |
---|---|---|
Texture Compression | ビルドに使用するテクスチャ圧縮形式。詳細については、WebGL テクスチャ圧縮 を参照してください。使用可能なオプションは以下のとおりです。 | |
Use Player Settings | これはデフォルトの選択です。Player 設定 ウィンドウで設定したテクスチャ圧縮形式を使用します。 | |
ETC2 | モバイル機器で広くサポートされている ETC2 形式を使用。 | |
ASTC | モバイル機器で広くサポートされている ASTC 形式を使用。 | |
DXT | デスクトップデバイスで広くサポートされている DXT 形式を使用。 | |
Development Build | この設定を有効にすると、ビルドにスクリプトデバッグシンボルとプロファイラーが加えられます。この設定を有効にすると、DEVELOPMENT_BUILD スクリプト定義が設定されます。開発ビルドではコンテンツが縮小されないため、配布するにはサイズが大きくなるため、アプリケーションをテストしたい場合にのみ、このオプションを使用してください。 |
|
Code Optimization | WebGL のコードをコンパイルする際に使用する最適化モードを選択します。 | |
Speed | これはデフォルトの設定です。これを選択すると、ランタイムパフォーマンスに対して最適化された WebGL コードを生成します。 | |
Size | これを選択すると、ビルドサイズに対して最適化された WebGL コードが生成されます。これは、WebGL ゲームを最小のダウンロード可能なサイズに縮小する場合や、モバイルブラウザー (Android または iOS) が、デフォルト設定のスピードに対して最適化された WebAssembly ビルドをモバイルデバイスが消費するには大きすぎるとしてロードを拒否した大規模プロジェクトに便利です。 | |
Autoconnect Profiler | 通常、この設定を有効にすると、自動的に Unity プロファイラーをビルドに接続できます。しかし、WebGL の場合、実行中のビルドに プロファイラー を接続することはできないので、代わりにこのオプションを使用してコンテンツをエディターに接続します。これは、WebGL ではプロファイラーの接続は WebSocket を使って処理されますが、Web ブラウザーではコンテンツからの発信接続しかできないためです。この設定を使用するには、Development Build オプションを有効にする必要があります。 | |
Deep Profiling | プロファイラーで ディーププロファイリング をアクティブにするには、この設定を有効にします。これにより、プロファイラーはアプリケーションのすべての関数呼び出しを検査し、より詳細なプロファイリングデータを返します。Deep Profiling Support を有効にすると、スクリプトの実行が遅くなる場合があります。このオプションは Development Build を有効にしている場合にのみ使用できます。 | |
Build | それを使ってアプリケーションをビルドします。 | |
Build And Run | これをを使用すると、WebGL Player をローカルに表示できます。Unity はローカルのウェブサーバーを使ってビルドをホストし、ローカルホストの URL からそれを開きます。また、レスポンスヘッダーを適切に設定したカスタムのローカルウェブサーバーを使用することもできます。詳しくは、圧縮ビルドとサーバー設定 を参照してください。 |
Asset Import Overrides の設定変更については、Build Settings を参照してください。
Build
フォルダーには、以下のファイルが含まれています ([ExampleBuild]
は、ターゲットのビルドフォルダーの名を表します)。
ファイル名 | 含まれるもの |
---|---|
[ExampleBuild].loader.js |
Unity のコンテンツをロードするためにウェブページが必要とする JavaScript のコード。 |
[ExampleBuild].framework.js |
JavaScript のランタイムとプラグイン。 |
[ExampleBuild].wasm |
WebAssembly バイナリ。 |
[ExampleBuild].mem |
プレイヤーのヒープメモリを初期化するためのバイナリイメージ。Unity はマルチスレッドの WebAssembly ビルドのみに対してこのファイルを生成します。 |
[ExampleBuild].data |
アセットデータとシーン。 |
[ExampleBuild].symbols.json |
エラーのスタックトレースを解除するのに必要なデバッグシンボル名。このファイルは、Debug Symbols オプション (File > Build Settings > Player Settings) を有効にする場合、リリースビルドに対してのみ生成されます。 |
[ExampleBuild].jpg |
ビルドのロード中に表示される背景画像。このファイルは、Player 設定 (File > Build Settings > Player Settings > Splash Image) で Background Image が使用可能な場合にのみ生成されます。詳しくは スプラッシュスクリーン のページを参照してください。 |
ビルドに対して Compression Method を有効にする場合、Unity は圧縮方法に対応する拡張子を識別し、Build サブフォルダー内のファイル名にこの拡張子を追加します。Decompression Fallback を有効にする場合、Unity はビルドのファイル名に .unityweb
という拡張子を追加します。それ以外の場合、Unity は、Gzip 圧縮方式の場合は .gz
、Brotli圧縮方式の場合は .br
という拡張子を加えます。
詳細については、圧縮ビルドとサーバー設定 を参照してください。
Player 設定 内の Name Files As Hashes を有効にすると、Unity はデフォルトのファイル名の代わりに、ファイルコンテンツのハッシュを使用します。これは、ビルドフォルダー内の各ファイルに適用されます。このオプションにより、ゲームビルドの更新版をサーバー上の同じフォルダーにアップロードし、ビルドの反復の間に変更されたファイルのみをアップロードすることができます。
ノート: ファイルシステムから直接プレイヤーを開くと、ブラウザーによっては動作しないことがあります。これは、ローカルファイルの URL に適用されるセキュリティ制限によるものです。
Enable Exceptions を使用して、予期しないコードの動作 (エラーとも呼ばれます) をランタイムに処理する方法を指定できます。Enable Exceptions にアクセスするには、WebGL Player Settings の Publishing Settings セクションに移動します。
以下の基本 API を備えています。
throw
ステートメントから明示的に指定された例外をキャッチし、finally
ブロックを確実に呼び出します。このオプションを選択すると、スクリプトから生成された JavaScript コードが長く遅くなります。これは、スクリプトがプロジェクトの主なボトルネックになっている場合にのみ問題になります。throw
ステートメントから明示的に指定された例外 (Explicitly Thrown Exceptions Only オプションと同じ)Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.