掴むと増える(GrabInstancerコンポーネント)

TIPS
TIPSTIPS:Components特集

ケーキやクッキーや飲み物を掴む(グラブする)と、どんどん増えていくつでも取れるというのがありますよね。これはGrabInstancerが使われています。

そして、GrabInstancerで検索するとたくさん使い方の記事がある……はずなのですが、私はそれらを読んでもうまく動かせませんでした。これは記事にしてメモしておかないと。

GrabInstancer
  1. まずオブジェクトをインスペクターで確認します。これに「上黄色矢印」で親をつくります。実はうまくいかなかったのは、親を作るところから失敗しておりました。正しくは、この場合にはscene.gltfを選んでから親を作るのですが、わたしはnodes_3の上の階層で作ろうとして、失敗しておりました。コンポーネントを使えないというのは、実に基本的なところが分かっていないということがよく分かります。
  2. そしてTransform→Interaction→GrabInstancerでGrabInstancerコンポーネントを追加します。
  3. Template: に掴んだとき(グラブしたとき)にだすオブジェクトをいれます。ここでは、scene.gltfですね。これをレーザーでグラブして、セットします。
  4. 次に元の子供の方はGrabbableのEnabled:を外します。こうしないと、掴めちゃいますからね。掴めるのは、親です。

これで出来上がりです!

簡単ですよね。簡単なのに、私ははまりました。原因はオブジェクトをデブツールで選んで、インスペクターを開いたときに、きちんとトップまでいっていなかったからです。結構、オブジェクトの階層構造って複雑になっていることがありますね。だから試行錯誤が必要だと感じました。

参考

れにうむさんの記事:https://qiita.com/rhenium_vrc/items/aa271c844acf291ae711

kanonさんの記事:https://note.com/kanon04/n/nba12759731a2

     
タイトルとURLをコピーしました