1. 銃をバーチャルキャスト内で持てるようにします。
Hierarchyウィンドウで「Gun」を左クリックします。
Inspectorウィンドウの「VCI Sub Item(Script)」の「Grabbable」にチェックを入れます。
これだけでバーチャルキャスト内で銃を持てるようになりました。
また、「Scalable」にチェックを入れるとバーチャルキャスト内でアイテムの大きさを変更することが可能になります。
今回は「Scalable」のチェックは外します。
これらの設定についてはVCI SubItem (VCISDK)で説明しています。
※注意
アイテムを持つにはキャラクターとの当たり判定が必要です。
Unityで当たりの判定の判断をするには「Collider」が必要になります。
今回はUnityにもともと準備されている「Cylinder」を使用したので「Capsule Collider」が自動的に入っていました。
自分でモデルを準備する場合はモデルの形に近い「Collider」を設定する必要があります。
「Collider」について詳しくはCollider (UnityComponent)を参照してください。
2. 他の人も銃を撃てるようにします。
Hierarchyウィンドウで「Gun」を左クリックします。
Inspectorウィンドウの「VCI Sub Item(Script)」の「Group Id」を「1」にします。
Hierarchyウィンドウで「Bullet」を左クリックします。
Inspectorウィンドウの「VCI Sub Item(Script)」の「Group Id」を「1」にします。
これで他の人も弾を撃てるようになります。
VCIには所有権というものが存在していて、所有権を所持していない場合VCIの場所を移動させたり操作することが出来ません。
アイテムをつかんだ時に、つかんだSubItemの所有権を取得できます。
弾の所有権を持っていないと弾を前方に飛ばせないですが、銃を撃つときに弾をつかまないのでGroup Id使って所有権を取得する設定をします。
VCI Sub Itemは、所有権を得ることで同じGroup IdのVCI Sub Itemの所有権も得ることが出来ます。
弾と銃に同じGroup Idを設定することで、銃を握った時に銃と弾の所有権を得られます。
ただし、グループIDが0(設定されてない)同士のSubItemの場合、別々のグループIDとして認識されます。
所有権に関するページ
3. 銃が重力の影響を受けないように設定します。
今のままだとVCIを生成しても重力の影響を受けて銃が地面に落ちてしまいます。
銃は重力の影響を受けないほうが使いやすいので重力の影響を受けない設定にします。
Hierarchyウィンドウで「Gun」を左クリックします。
Inspectorウィンドウの「Rigidbody」の「Use Gravity」のチェックを外します。
これで重力の影響を受けなくなりました。
RigidbodyはVCI Sub Item(Script)を追加したときに自動的に追加されます。
4. 銃の物理演算を無効にします。
今のままだとVCIを離したときにその場にとどまらずに飛んで行ってしまいます。
手を離したときにその場に留まったほうが使いやすいので物理演算を無効にします。
Hierarchyウィンドウで「Gun」を左クリックします。
Inspectorウィンドウの「Rigidbody」の「Is Kinematic」にチェックを入れます。
これで物理演算が無効になりました。
これら以外のRigidbodyの設定について知りたい場合はRigidbody (UnityComponent)を参照してください。
このページで作整、設定した物
※BulletのGrabbableは無効でも問題ないです。
銃VCI Top | |
---|---|
次のページ | [銃VCI④]VCIスクリプトを作成 |