#初めに
ここ最近、就活を進めながらスキルアップのために「パズドラ」の模作をしていました。
実装したいものの実装は終了したので、とりあえず公開してみました。
https://unityroom.com/games/pazzdoracopy
↑ゲームのリンク
完璧なパズドラとは言えませんが、ちゃんとパズルをして戦うことができます。
※2021/03/26現在
WebGLビルド自体やったことがなく、色々と問題が起きたので対処法等をお話します。
#そもそもWebGLってなんぞや
自分はUnityのデフォルトや、Androidのビルドはしたことがあったのですが、WebGLのビルドをしたことがなく、この間のインターンシップで始めて経験しました。(しかも実際にビルドしたのは自分ではなくチームメンバー)
なので今回初めて触ったのですが、簡単にいうとWeb上で自分の作ったゲーム動かせるよービルドって感じです(名前そのまんま)
#上手くいかなかった部分について
とりあえずインストールを終わらせて、ビルドしてみることに。
ビルドが終了すると、
このようなファイル群が出力されている(StreamingAssetsは作った場合)
この中の、index.htmlを開けば実際にプレイできるのだが...
このとおり、いつまで経ってもゲームが起動しない...
調べてみたところ、どうやらブラウザのセキュリティ云々のせいでそのままでは起動できないらしい。
こちらの記事を参考に、firefoxで動かせるようにしてみたところ...
うまく起動できました。
ビルドする時に、BuildSettingsのDevelopment Buildを有効にすると、コンソールが表示されるようになるので、デバッグをする際に活用しよう。
#いざ公開へ
公開するために、まずUnityRoomのアカウントを作る必要があります。
ツイッターアカウントで簡単に作れるのでためしてみてください。
作品を投稿しようとすると
このような画面が表示されます。
ここら辺は自分の作品の情報を入力して下さい。
その後、細かい情報を入力して、アップロードをすることになります。
#いざアップロード
と、いうわけで、作ったゲームのアップロードをしていくのですが...
なんか、アップロードしなければならないファイルのうち、wasmなるファイルが見つかりません。(全てasmになっている)
とりあえずこれかな?とテキトーにファイルを入れてみるも、もちろん動かず...
どうすればいいんだと詰まってしまいました。
#wasmにする
色々試して調べてしてみた結果、やっぱりasmで出力しているのが悪いようです。
Unityから変更できないみたいなので、ファイルの中身をいじっていきましょう。
プロジェクトファイルのProjectSettingsの
ProjectSettings.assetを開きます。(最初は既定のアプリが決まっていません。私は、ビビジュアルスタジオを使用しました。)
その中の**[webGLLinkerTarget:]**の数字を1にします。(最初は0になっている)
私の場合は712に行目にありました。(みんなそうなのかな?)
変更できたら保存して閉じてビルドをもう一度やり直してください。
無事必要なファイル4つを出力することが出来ました。
#今度こそ公開する
と、いうわけで今度こそ作品を公開します。先ほどのアップロードページにもどり、4つのファイルをアップロードして下さい。
ちなみに、GZファイル形式を指定されていますが、unitywebでも問題なくアップロードできます。(sizeが大きくなると厳しいのかな?)
アップロードが完了したら、公開設定で一般公開に変更するだけで作ったゲームが公開されます。
無事、UnityRoom上で動くようになりました。
#まとめ
と、いうわけで、今回UnityRoomに投稿してみた話でした。
初めて製作したこともあって色々とわからないことが多かったですが、何とか公開できました。
本当はGithubにいれて公開する予定だったけどLFS関係でうまくいかなくて断念(余裕があれば別記事にまとめます)しました。
UnityRoomは比較的簡単に投稿できて、更新も簡単なので、是非ゲームを作った際には投稿して、多くの人に遊んでもらうという体験をしてみてほしいです。
新しく投稿したゲームは一番上の方に出てくれるので意外と多くの人が触ってくれます!
コメントをもらえたり、作品の評価をしてもらえることもあるので、フィードバックを貰うためだったり、自信をつけるのにも使えます(・ω・)(-ω-)(・ω・)(-ω-)ウンウン
ではノシ