見出し画像

動かせるアイテムを作る Cluster Creator Kit - Grabbable Item

動かせるアイテムは楽しい!そんな楽しい動かせるアイテムを作ろうとして、学んだこと、教えてもらったことをメモしていく投稿です。


スクリーンショット 2021-05-27 114813

「はい、エビフライですよ」 in えんきすぺーす

スクリーンショット 2021-05-27 115900

「柄杓で水をくんでー」in IchiKon Caffee 3号店

動かせるアイテムがあるとつい持って遊びたくなる

clusterのワールドでは、あちこちに動かせるアイテムがおいてあります。アイテムがあって、そこにだれかいると、渡してみたくなったり、なにかしてみたくなったりして、つい遊びたくなりますよね。

この投稿は、動かせるものを作りたい!となったときに、あれ?うまくいかないなってなることがあったので、繰り返さないようにするために、わかったことをメモしていく投稿です。

とにかく動かせたらよい時

一番最初はこれ、とても簡単です。HierarchyでSceneか何もないところを右クリックして、GameObject → 3D Object -> Cube(ほかの形でも大丈夫)を選択します。

スクリーンショット 2021-05-27 121244

Cubeができたら、HierarchyでCubeを選択します。(画像ではCubeだったのでCube(4)となっています)

スクリーンショット 2021-05-27 122041

Cubeを選択すると右側にCubeのInspectorが表示されるので、Add Componentをおして、Grabbable Itemを選択します。(検索用の窓があるのでgraくらいまで入力すると絞り込まれて選ぶのが簡単です)

こんだけ、簡単。もうこれで持てるCubeができました

スクリーンショット 2021-05-27 122542

ちなみに、追加するとInspectorにはなんだかいろいろくっついてくるようになります。この、いろいろがわからなくても、とりあえず大丈夫、持てるから。(いい感じにもちたいんだけどな、、、とかなと設定をするようになります。はまるたびに説明をこの記事に追加していこうとおもいます。)

水平に動かすアイテムを作りたい

テーブルを作ってみて、ならべてあそんでいたんだけど、向きがバラバラになって困る。。。と、いうことで、いっつも水平を維持するアイテムを作ってみることにしました。

スクリーンショット 2021-05-27 124525


今回動かしたいアイテムは「サイドテーブル」です。DimensionというAdobeのソフトでつくってみたobjectをunityにいれてみました。

スクリーンショット 2021-05-27 125446

Inspectorはこんな感じ。「あれ、このサイドテーブルにはコライダーがない、コライダーがないということは、ものを置けないぞ」ということでまずコライダーを付けます。

スクリーンショット 2021-05-27 125906

Add ComponentからMesh Colliderを選択します。(検索窓にmesとか入れると絞り込まれます)Box Colliderにすると軽くなるけど、立方体になってしまうので、ここはテーブルの形どおりになるMesh Colliderにすることにしました。

スクリーンショット 2021-05-27 171237

Mesh ColliderをつけたらConvexにチェックを付けます。(ここにチェックをつけないと、Mesh Colliderは衝突するようにならないらしい)

そしたら次は、Add ComponentからGrabbable Item(Script)を選択します。

スクリーンショット 2021-05-27 165158 (2)

これで持てるようになりました。そして、次にいよいよ水平に動かすための制限をつけます。Add Componentから、Rotation Constraintを選択します。

スクリーンショット 2021-05-27 165758

Rotation Constraintは、回転を制限するものです。

まず、Rotation Constraintと書いてあるところの横の三角形をクリックして開いてIs Activeにチェックをいれます。

次にFreeze Rotation Axesは、Xにチェック、Yはチェックなし、Zにチェックを入れます。これで、X,Z軸方向に回転しないようになって、Y軸(縦軸)方向だけ回転するように制限をかけることができます。

そして、Sourcesにある+をクリックし、固定する対象を選択します、Select TransformというWindowが出てくるのでそのWindowの中のSceneのタブをクリックします。今回は床にしているPlaneを選択しました。

これで、水平に動くアイテムの出来上がり。

スクリーンショット 2021-05-27 172558

失敗の例

スクリーンショット 2021-05-27 170936

Mesh ColliderをつけたときにConvexをつけわすれると、無限落下するアイテムができあがります。がんばって落ち続けるサイドテーブルをみていると、かわいそうだなという気持ちになります。なんでなのかわからないけど、Mesh Colliderはそういうものらしいです。

また、RigidbodyにIs Kinematicをつけると、重力がはたらかなくなり空中でとまるようになります。これはこれで使い道があるのですが、今回は普通のテーブルみたいにつかいたいということだったので、Is Kinematicはつけないのが正解。

この辺のはまりポイントがよくわからないので、メモをしていくことにしました。書き続けていたら何かそのうちわかるかもしれない。わかりたい。





いいなと思ったら応援しよう!