要旨: Mi-Runnerのアバターモデルの差し替えはほとんど問題なかった(Unityバージョン&設定の問題で少し引っかかった)
Mi-Runnerのアバターモデルは以前 BOOTH で買ったものを使っているのだが、VRoid Studioが出力するモデルがそのままUnityで使えるらしいので、置き換えできるか試みた。
- Unityをバージョンアップして、以前のコードが動くか確認→ok
- VRoid Studioをインストールしてシンプルにモデル生成、Export→ok
- Unity側にVRMモデルを取り込むためのカスタムパッケージを読込→ok
- 作ったアバターモデルをUnityに取り込んで走らせる→ok
ここまでまったく問題発生せず。実作業として30分くらいで終わっている感じ。
ちょこっと引っかかったのが、
- UnityからWebGLビルド→ok
- Mi-RunnerのwebGLコンテンツを差し替え→ng
調べた結果、webGLの読込に使っていたnpmパッケージがUnityのバージョンの問題で非互換になっていた模様。
まぁUnity非互換はそういう思想だから仕方ない。
markdown
"vue-unity-webgl": "^1.2.0",
↓
"unity-webgl": "^1.2.1",
それに伴いunityビューの呼び出し方処理を修正するのにちょこっと詰まったが、まぁなんとか動作。
これのUnity/C#部はとてつもなくきたないソースなので、そこをほとんどいじらずに動くというのはちょっと驚きだった。
こちらのモーションは元々Unity chanベースのメカニムモデルのまんまだし、VRoid Studio側のサンプルモーションもUnity chanまんまだから 違いはないとはいえうまく出来ているものだ。
やわらかいトゥーンレンダリング+髪と服の揺れモーションが組み込み済みなので、なかなかかわいい。
(写真はログ保存容量削減用に元々解像度をガリガリに落としている。高解像度表示ではきれいだし、ログ保存の仕組みを整理できればもう少し解像度が上げられるだろう)
日替わりアバターもそのうちできるだろう。
先週末はそれ以外にも結構いろいろ進めていて、
- 追加ラズパイサーバーの準備とか
- Firestore側にごちゃまぜで保存していた行動ログデータをsqlite側に変更中とか
Firestore周りの処理は書いた時期次第でカオスになってるので、ここの書き換えはまだきちんと出来ていない。。。