AR FoundationでLive2DモデルをAR表示させてみた
はじめに
Live2DモデルをAR表示させるサンプルを作ってみた。ARFoundationを使って実装した。
実装されていること
認識した画像(ARマーカー)の上にオブジェクトを生成
Live2Dモデルの背面描画シェーダー
- Cubism SDK に入っているUnlitシェーダーに裏面の描画処理を追加した
- ポリゴンの裏面を描画する方法は「【Unityシェーダ入門】ポリゴンの表面と裏面に別テクスチャを貼る - おもちゃラボ」を参考にした
- 実装:UnlitReversible.shader
3次元空間におけるLive2Dモデルの描画順を調整(オクルージョン)
- CubismRenderController.SortingOrderの値をMainカメラと各モデルの間の距離を使って設定している
- 実装:CubismRenderControllerFor3DSpace.cs
- ※一部が上手く描画されない時もある
Live2Dモデルの作成など
既存のモデルを表示させるだけなら特別なことは必要ない。Cubism EditorでUnity用のデータを書きだして、Unityへインポートする。 docs.live2d.com docs.live2d.com
おわりに
- マーカー画像の位置トラッキング精度が微妙なことが多くて困っているのだが、どうやって実装すれば安定するのか。
- ReferencePointを使ってみたこともあるけど、それでも位置がズレてしまうことがある。