見出し画像

[VRChat] VRC_Pickupをつかって掴めるオブジェクトをつくる

こんにちは!

ぷもんです。


・今回やること

VRChatのワールド内で掴めるオブジェクトを作りたいです。
Cubeでもいいのですがそれだと面白くないので、ARCHICADでつくったモデルを小さくした模型のようなものを掴めるようにします。


・事前準備

事前準備として新しいプロジェクトを作り、VRChat SDKをインポートし、VRCWorldをHierarchyへ配置しました。

キャプチャ1


これらのやり方はこちら↓で詳しく書いたので割愛します。

こちら↑のnoteはVRChatのワールドづくりに必要なもの、ワールドの作り方の基本について書いています。とりあえずワールドをつくってみたい!という方は参考になると思うので覗いてみてください。


・Planeで床をつくる

まずは、アバターが建てる場所を作るためにPlaneで床をつくります。
画面左のHierarchy上で右クリック→3DObject→Planeをクリックします。

アセット 1

これで1番簡単なワールドが出来上がりました。
ここに掴めるオブジェクトを追加していきます。


まずは、Cubeでやってみます!

・Cubeを追加

画面左のHierarchy上で右クリック→3DObject→Cubeをクリックします。
そのままでは大きいのでScaleを0.1にして、Positionのyの値を1にしておきます。

アセット 2

Cubeのサイズは好みなので大きくしたい人はScaleの値を大きくすると良いです。
Positionのyの値はPlaneより低い位置にあるとそのまま落ちて、ワールドに入っても見あたらない状態になるので注意です。


・CubeにVRC_Pickupを追加

掴めるオブジェクトにするにはVRC_Pickupというコンポーネントを追加しなければなりません。

画面右のInspectorのAdd Componentをクリックし
pickと入力するとVRC_Pickupというものが出てきます。

アセット 3


クリックしてVRC_PickupとRigidbodyが画面右のInspectorに追加されていればOKです。

アセット 4_1

Rigidbodyは重力など物理的な運動を制御するものです。

これでワールドをアップロードすればつかめるCubeをワールドに置くことができます。
アップロードの仕方についてはARCHICADでつくったモデルをVRChatのワールドとしてアップロードでまとめたので参考にしてください。


・ARCHICADのモデルにしてみると?

Cubeの代わりにARCHICADのモデルにしてみます。

ARCHICADでつくったモデルをVRChatのワールドとしてアップロードのワールドとしても利用したモデルを縮小したものを掴めるようにしたいと思います。


画面左下のAssetを右クリックしてImport New Asset...をクリックして使いたいモデルを選択しインポートします。
インポートしたモデルをHierarchyへドラッグします。
そのままではサイズが大きかったのでscaleを0.05にして持てる大きさにしました。

アセット 6


さらに、先ほどと同じようにVRC_Pickupのコンポーネントを追加します。

これでモデルをつかめるはず!と思い、ワールドをアップしてみたのですが追加したはずの家のモデルがなくなっていました。


・Box Colliderを追加

うまくつかめているCubeと比べてみると、Box ColliderがついていなかったのでAdd Componentで検索して追加するとうまくいきました。

アセット 7

Box Colliderは当たり判定のようなもので、Box ColliderがついていないモデルはPlaneにあたっても透過してRigidbodyがついている効果で重力に従って下に落ちていったと思われます。


最終的に出来上がったのはこんな感じ↓
大きい模型を持っている感じになっていい感じです。


TwitterでもVRChatや建築×テクノロジーについて
積極的にツイートしています。
興味のある方はぜひのぞいてみてください↓


最後まで読んでいただきありがとうございました。

ぷもんでした!

noteを日々投稿してます! もしいいなと思ってもらえたら サポートしてもらえるとありがたいです。 VRやパソコンの設備投資に使わせていただきます。 ご意見、質問等ありましたらコメントください。 #ぷもん でつぶやいてもらえると励みになります。 一緒に頑張りましょう!