作ったゲームをURLひとつで遊んでもらえたら最高ですよね。Unityでは、Webブラウザで動くゲームも作れます!アプリをインストールしなくても遊べるので、友だちに見てもらうのにもぴったり。今回はWeb向けのビルドと、itch.ioなどで公開するときの注意点をご紹介します。
この記事で学べること
- Webビルド(以前のWebGL)とは何か
- Web向けビルドの手順
- ブラウザで確認する正しい方法(Build And Run)
- 公開するときの圧縮の設定(Decompression Fallback)
- Webで動かすときの制限と注意点
前提知識
Webビルドとは?
Unityのゲームを、ChromeやEdge、Safariなどのブラウザで遊べる形にするビルドです。
- Unity6でのプラットフォーム名はWeb(以前はWebGLと呼ばれていました。ネットの記事ではまだWebGLの名前もよく見かけます)
- Unity6から、スマートフォンのブラウザも正式に対応しました
- 新しい描画の仕組みのWebGPUも使えるようになってきていますが、まだ実験的な機能です。最初は初期設定のままでOKです
プロトタイプを人に見てもらったり、ゲームジャムの作品を公開したりするのにぴったりです。
Web向けにビルドしよう
ステップ1:Webに切り替える
- File>Build Profilesを開く(Ctrl+Shift+B)
- 左の一覧でWebを選び、Switch Platform
- 「Web Build Support」のモジュールが入っていない場合は、Unity Hubから追加します
ステップ2:Web用の設定を確認
Player SettingsのPublishing Settingsに、Web用の設定があります。
- Compression Format:ファイルの圧縮形式(Gzip / Brotli / Disabled)
- Decompression Fallback:公開先のサーバーの設定に関係なく読み込めるようにする(後で説明します)
- Name Files As Hashes:ファイル名を中身から作った名前にする(更新したときに古いファイルが使われにくくなる)
- Data Caching:一度読み込んだデータをブラウザに保存しておく
ステップ3:ビルドする
- Build And Runを押して、保存先のフォルダを選ぶ
- ビルドが終わると、ブラウザが自動で開いてゲームが起動します
出来上がるファイル:
index.html:ゲームを表示するページBuild/:ゲームのデータTemplateData/:ページの見た目やローディング画面
ブラウザで確認しよう
index.htmlをダブルクリックしても、ゲームは動きません。
ブラウザは安全のため、パソコンの中のファイルを直接開いたページ(file://で始まるアドレス)からは、ゲームのデータを読み込ませてくれないためです。
- 確認するときは、Build And Runを使う
- Unityが自分のパソコンの中に簡易的なサーバーを立てて、
http://localhost:〇〇のアドレスで開いてくれます
- Unityが自分のパソコンの中に簡易的なサーバーを立てて、
- 一度ビルドしたものをもう一度見たいときも、もう一度Build And Runすればすぐに開けます
スライムindex.htmlをダブルクリックしたら、読み込みが止まったまま動かない・・・



それはブラウザの安全の仕組みのせい!確認はBuild And Runでやろうね
ゲームを公開しよう
itch.ioで公開する
itch.ioは、個人のゲームを無料で公開できるサイトです。
- itch.ioでアカウントを作る
- 「Upload new project」を選ぶ
- Kind of projectでHTMLを選ぶ
- ビルドしたフォルダの中身(index.html・Build・TemplateData)をまとめてZIPにしてアップロード
- 「This file will be played in the browser」にチェックを入れて保存
GitHub Pagesで公開する
- GitHubでリポジトリを作る
- ビルドしたフォルダの中身をアップロード
- リポジトリのSettings>PagesでGitHub Pagesを有効にする
- 表示されたURLで遊べるようになる
公開したら読み込みが止まる:Decompression Fallback
Gzip・Brotliで圧縮したゲームを置くとき、置いた先のサーバーに「このファイルは圧縮されています」と伝える設定が必要です。その設定がされていないと、読み込みの途中で止まったり、エラーが出たりします。
GitHub Pagesのように、自分でサーバーの設定を変えられない場所に置く場合は、次のどちらかにしましょう。
- Publishing SettingsのDecompression Fallbackにチェックを入れる(ゲームの中で展開するようになります)
- または、Compression FormatをDisabledにする(ファイルは大きくなります)
itch.ioのように、Unityのゲームの公開に慣れているサイトもありますが、うまく動かない場合はまずこの設定を試してみてください。
Webで動かすときの注意点
- 処理の重さ:パソコン向けのビルドより重くなりやすいので、重い処理は控えめに
- メモリ:ブラウザが使えるメモリには限りがあります。特にスマートフォンのブラウザは少なめです
- ファイルの読み書き:パソコンのファイルは読み書きできません。セーブにはPlayerPrefs(ブラウザの中に保存されます)を使います
- 音:ブラウザの決まりで、プレイヤーが一度クリックやタップをするまで音が鳴らないことがあります
ファイルサイズを小さくしよう
Webのゲームは、遊ぶ前にデータを全部ダウンロードするので、ファイルが小さいほど早く始められます。
- 画像の大きさ:テクスチャのInspectorで、Max Sizeを必要な大きさまで下げる
- 使っていないものを入れない:Scene Listに入れていないシーンや、そこから使われていないアセットは、ビルドに入りません。Resourcesフォルダの中身は全部入るので、不要なものは置かないようにしましょう
- 音声:BGMなど長い音声は、Inspectorの設定で圧縮しておく
スマートフォンのブラウザで遊んでもらうとき
- マウスではなくタッチで操作できるようにする(ボタンを画面に置くなど)
- UIのボタンは、指で押しやすい大きさにする
- 画面の縦横に合わせて、Canvas Scalerを設定する(第9章で説明しています)
よくあるエラーと対処法
エラー:index.htmlを開いても動かない
- 原因:ファイルを直接開いていて、ブラウザに読み込みを止められている
- 対処法:Build And Runで開く
エラー:公開したページで読み込みが止まる・エラーが出る
- 原因:圧縮したファイルを、サーバーの設定なしで置いている
- 対処法:Decompression Fallbackにチェックを入れるか、Compression FormatをDisabledにしてビルドし直す
エラー:スマートフォンで途中で落ちる
- 原因:メモリが足りない
- 対処法:テクスチャのMax Sizeを下げる、一度に読み込むものを減らす
まとめ
- Unity6ではWeb(以前のWebGL)。スマートフォンのブラウザにも正式対応
- 確認はBuild And Run(index.htmlのダブルクリックでは動かない)
- itch.ioやGitHub Pagesで公開できる
- 読み込みが止まるときはDecompression FallbackかCompression Format:Disabled
コメント