FC2ブログ
ヽ|∵|ゝ(Fantom) の 開発blog? ホーム »2020年11月
2020年11月の記事一覧

【VRMLiveViewer】【Unity】GLB で床を作る(FloorMake_Sample の解説)  


 あくまで VRM Live Viewer での大きさや見え方の目安程度のものだが、実際に私がプリセットの床を作ったときの Unity シーンと GLB (床モデル)を用意してみた。





 ここでは FloorMake_Sample 簡単な解説を書いておこう。

(※) Unity 2018.4 - 2019.4 / UniVRM 0.61 / Windows10(x64) で確認



 FloorMake_Sample をインポートすると、シーンとアセット、スクリプト等が入っている。サンプルシーンは「Assets/VRMLiveViewer/FloorMake/Scenes/」以下にあるので、開いて欲しい。Unity バージョンは GLB エクスポートに利用する UniVRM に合わせると良いだろう(掲載時点:UniVRM 0.61.1 の最低バージョン Unity2018.4 以降)
※なるべく「安定版(Latest stable version)」を利用した方が良いでしょう(「Pre-release」は致命的な不具合を含んでる場合があるため)。



 このシーンのカメラの位置やライトの設定は VRM Live Viewer を起動した初期の状態と同じになっている。

 いくつか入っているプリセットの床の大きさの雛形も同じである。チェックの床のマスの大きさも同じだ(基本的には1マス= 1m となっている ※Unity標準)。3Dモデリングツールによっては1インチ(= 0.0254 m)になってる場合があるので注意しよう。

 また、丸い床の大きさは、CRS ステージの中央の円形の舞台の大きさと同じで、要するに「Unite In The Sky」を踊ったときにはみ出ない大きさになっている(※平均的な身長の場合=足が長いモデルほど大きく動くので注意)。ただアプリでは「3Dオブジェクトの配置」でスケール調整できるので、おおよその大きさでも良いだろう。

 シーンには原点となる「_Origin」と 四角い床、丸い床(表面が丸みがあるのとフラットなもの)、チェック柄の平面が入っている。これらも実際にアプリで使われているものと基本的に同じだ(透明なマテリアルや色違いのテクスチャにしている)。



 回転に関しては、通常ゲーム等では進行方向を正、背中の方向を負になってるので、視線(カメラ)は前進方向を向いている。そのため、背景は自分に向かってる場合が多い(180度回転)。しかし、VRM Live Viewer では、キャラに向かってカメラが置かれてるので(つまり、正面から背面へ方向= 180度)、背景はキャラの向きと同じにすると良い(キャラの背に背景を置く場合= 0度)。これも「3Dオブジェクトの配置」で回転できるので、0度か180度にしておけば、使いやすいだろう。


 GLB エクスポートするには UniVRM もインポートしよう。この中には、GLB で使えるシェーダも入っている。

UniVRM(一番上にある最新版の「Assets」からパッケージをダウンロードできる)
※なるべく「安定版(Latest stable version)」を利用した方が良いでしょう(「Pre-release」は致命的な不具合を含んでる場合があるため)。



 GLB のエクスポートの仕方は、ヒエラルキーのオブジェクトを選択して、メニューから「Export」するだけだ。



 もし、少し試したいなら、ヒエラルキーのオブジェクトを適当に複製(Ctrl+D)して、マテリアルやテクスチャ、シェーダを編集してエクスポートしてみると良い。


(c) UTJ/UCL
ユニティちゃんの画像はサンプルに入ってません。
Unity-Chan! 公式サイトで配布されている画像を加工したものです。

 ちなみに、使えるシェーダはマニュアルを参考にして欲しいが、影が欲しい場合は、Standard、影を付けたくないときは UniGLTF/UniUnlit または Unlit/Texture などを使うと良い

対応しているShader(UniVRM マニュアル)

 glb をエクスポートしたら、VRM Live Viewer にファイルをドロップすればロードできるので、「3Dオブジェクトの設定」で回転や大きさを調整すると良い。

 注意して欲しいのは、エクスポートするオブジェクトのルートは必ず原点 (0, 0, 0) にした方が良いということだ。これは回転や伸縮の基準位置となるためで、原点でない場合、使い勝手の悪いものになってしまう場合がある。また、床は通常、キャラの足がめり込まないように、オブジェクトは Y 軸で 0 より下にあった方が良いだろう。このサンプルシーンではそんな感じで作られている。既に作られているオブジェクト(fbx 等)を使うときは、これらサンプルを基準にして、原点 (0, 0, 0) に空のオブジェクトを作り、その中に配置・調整してから glb エクスポートすると、アプリ内であまり調整しないで済む。活用して貰えれば嬉しい。

 少し複雑なオブジェクトなどを作ってみたい場合は、古くなってしまったが、以下の記事を参考にしてみるのも良いだろう。

【VRMLiveViewer】【Unity】GLBで背景モデルを自作する







(関連記事)
【VRMLiveViewer】VRM(VRoid)をライブステージで踊らせるアプリを作ってみた
【VRMLiveViewer】【Unity】GLBで背景モデルを自作する
【VRMLiveViewer】背景GLTFの設定リスト(使用例)


関連記事
スポンサーサイト



category: Unity

thread: ソフトウェア開発

janre: コンピュータ

tag: VRMLiveViewer  背景3Dモデル  GLB 
tb: 0   cm: --


プロフィール

Social

検索フォーム

全記事一覧

カテゴリ

ユーザータグ

最新記事

リンク

PR

▲ Pagetop