ロケーションは100MBじゃ足りない!
みなさんは、VCIを作っている際にこんな画面に出くわしたことはないでしょうか?
VCIは、100MBのファイル制限が設けられており、テクスチャファイルが100個とかあるようなロケーションを作っていると、100MBを余裕で超えてしまいます!
そんな時に使う方法として、VCIを分割し、複数アイテムでロケーションを構成する方法がありますが、今度は位置を合わせる必要が出てきます。
Vキャス内で、手で持ってモデルを位置調整することもできますが、ピッタリきれいに合わせることは不可能に近いので、スクリプトを使って動かしてあげるほうがきれいに位置調整することができます!
ここでは、ロケーションVCIが100MBを超えた際に、モデルの分割し、分割後のVCIの位置合わせを簡単にきれいに行う方法をご紹介します!
モデルの分割
モデルの分割は、fbxへの変換の際でも、fbx変換後にunityに持ってきた後でもできますが、ここでは、blenderからfbxに変換する際に分割してunityに持っていきます。
まず、blenderで分割するオブジェクトを選択します。
選択したら、上のメニューバーの「ファイル」→「エクスポート」→「FBX」を選択。
選択すると、以下のようなウィンドウが出てくるので、「選択したオブジェクト」にチェックを入れ、「オブジェクトタイプ」の「メッシュ」を選択した状態で、「FBXをエクスポート」を押すと、分割されたFBXが出力されます。
同じ手順で、残りのオブジェクトも選択して出力します。
unityへのモデルの導入
0. すべてのオブジェクトが出力できたら、unityを開き、uniVCIをインポートした状態までもっていき、VCI Objectを作っておきます。
さらに、モデルを入れる用のVCI SubItemも作っておき(ここでは「Model」というSubItemを作っています)、Rigidbodyの「Use Gravity」のチェックは外しておき、「Is Kinematic」にチェックを入れておきます。
1. 整理用にモデルを入れるようのフォルダを作っておき、そこにモデルのテクスチャを入れたフォルダを入れます。
2. 続いて、分割したFBXを入れます。(1と2の順番を逆にすると、FBXを入れたときにテクスチャがついてくれません。)
3. 入れた分割FBXをすべて先ほど作ったVCI SubItemに入れます。
分割して取り込んだモデルは以下の通り
魔法の呪文を入力する
ここで、VCI Objectのスクリプトに魔法の呪文を入力しておきます。
入れるのは、下の1行だけです!
スクリプトの詳細は以下のリンクを見て頂ければいいのですが、モデルの位置と回転を原点にリセットするスクリプトになります。
https://virtualcast.jp/wiki/vci/script/reference/resetroottransform
vci.ResetRootTransform()
VCI Objectの分割
ここまででVCIアイテムとしての、分割の準備ができましたので、ここから分けていきます。
VCI Objectを2つ複製し、合計3つのVCI Objectを作成します。
各々の、VCI SubItem内のモデルを、1つずつになるように、モデルを削除し、1つのVCI Objectにつき、1つの分割モデルが1つ入っているようにします。
これで、100MBを超えたロケーションアイテムができました!
それぞれ、VCIをエクスポートし、3つのうち、1つをロケーションとしてアップロードし、残りの2つは、アイテムとしてアップロードして完成です!
あとは、シェーダーを変更したり、スクリプトを追加したりと、各々のロケーションの完成度を高めていく感じになります!