個人的勉強メモ置き場

プログラミングど素人のメモ置き場

Unityroomにゲームを公開する際に詰まったこと

前回のゲームをUnityroomにも公開することにした

zykbgame.hateblo.jp

慣れないWebGL形式でのアップロードだったので結構エラーを出したり

Collab does not contain a definition

zykbgame.hateblo.jp

この際一時的にプロジェクトを2020.2.0a12にしていたので2019.3.9f1にダウングレード。

 

f:id:zykb:20200607042935p:plain

なんかたくさん出てきた

日本語情報は無かったけど比較的楽に解決

プロジェクト内のUnity Collaborateを1.2.16に下げれば大丈夫

f:id:zykb:20200607043217p:plain

その後WebGLでビルド。ビルドエラーは無かった

 

日本語が表示されない

テストするとCanvasのテキストが表示されていないご様子

調べてみると公式のヘルプにこちらが

qiita.com

どうやらデフォルトフォントがArialなので日本語が表示されないみたい

他のフォントを導入してインスペクターから設定しよう

 

an error occurred the unity content on this page

動作確認も終えたのでUnityroomにアップロード

でもなぜか読み込みが途中で止まってしまう。ブラウザを変えても読み込めない。Firefoxを使うと上のエラー文が出てきた。

その後調べているとアップロードファイルの拡張子が違うことに気づく

 

f:id:zykb:20200607045219p:plain

 Unityroomにアップするファイルの拡張子はwasmでないといけない。そこがasmになっていた

じゃあwasmでビルドはどうやるの?

これは簡単でPlayerSettingでLinkerTargetで変更でき…

f:id:zykb:20200607050012p:plain

ない

なんか最近になってなくなったらしい。どうして…

仕方ないので直接変更しよう

note.com

ProjectSettings.AssetのWebGLLinkerTargetの値を1にしてビルド

f:id:zykb:20200607050409p:plain

.wasm.code.unitywebがない

code.unitywebがないけど????.wasmファイルを????.wasm.code.unitywebにリネームすればOK

 

他のやり方

tatsuya-koyama.com

Assets直下にEditorフォルダを作成して

PlayerSettings.WebGL.LinkerTarget = WebGLLinkerTarget.Wasmで固定してあげる

f:id:zykb:20200607051411p:plain

 この場合もcode.unitywebがビルドされないのでリネームしよう

f:id:zykb:20200607052934p:plain

起動できた

終わりに

この記事が役に立ったらぜひプレイしてみてね

unityroom.com

GooglePlay版もあるぞ!

play.google.com