Unityでボーリングゲームを作る #10 柵を付ける - Unityの使い方



Blender -> モデリング -> Unityでボーリングゲームを作る #10 柵を付ける

Unityでボーリングゲームを作る #10 柵を付ける


レーンの両サイドに柵を付けられるようにしました。

柵はBlenderのArchipackというアドオンを使うと簡単に作れます。アドオンはUser Preferences...から追加できます。


検索で簡単に見つかります。チェックをいれると使えるようになります。


Shift + AのAddメニューに追加されています。

Fenceをクリックしてみます。

数種類のフェンスが用意されていました。Metalを使ってみます。


クリックすると3Dカーソルの位置にフェンスが作られます。


Dimensionsで長さを変えてみました。


プロパティシェルフにたくさんの項目が用意されていて、柵の変形が簡単に行えます。
例えば、Partsの値を増やすと格子の数が増えていきます。




Dimensionsを変えると全体の長さが変わるのでこれと合わせて、レーンの長さに合わせました。




Subsのチェックを外すと、下部の細かい縦棒が消えます。

このように細部も簡単に変更できます。

Railsの数を一つにしてみました。


Rail1の高さを調節しました。


ポストが長すぎるのでHeightで高さを変えました。


Altitudeで位置を調節しました。


このままではScaleが揃っていません。

全体のスケールを変えたい時に不便なので1に揃えます。

そのためにはCtrl + A -> Scaleをクリックします。


すると、大きさはそのままでScaleの値が揃います。


両サイドに柵をつけたいので、Shift + Dでコピーして片方を反対にもってきて、Shiftを押しながら両方の柵を選択します。


Ctrl + J で一つのオブジェクトに統合します。


ピボットが離れた場所にあるので、ツールシェルフのSet OriginからOigin to Center of Massを選択して中心に移動させます。




このままだとUnityにもっていったときに角度が変わるので、Unityに合わせて回転させてからエクスポートします。
参考:https://light11.hatenadiary.com/entry/2019/01/06/215851

Unityでアニメーションを付ける

Unityにもってきてシーンに配置しました。

柵が高すぎたので一段目をレーンの下に埋めて配置しました。

フェンスを上げ下げするアニメーションを作って、アニメーターコントローラーでステートの遷移を作りました。

オレンジのステートにはアニメーションが入っていません。
アニメーションの作成・遷移

Parametersの+ボタンからトリガーパラメーターを一つ作ります。


オレンジから灰色のステートの遷移と、灰色のステート同士の合計3つの遷移の矢印のインスペクタを全て同じ設定にしました。


スクリプトでSetTriggerメソッドを使うことでアニメーションを遷移できます。

fenceAnimator.SetTrigger("fence");

フェンスのデフォルトの位置を、レーンの下に完全に埋まった状態にしています。

フェンスの衝突設定

フェンスにはMeshコライダーをつけて、ボールが衝突するようにしています。


レーンとは衝突しないように、フェンスにレイヤーをつけて、Edit -> Project Settings... -> PhysicsのLayer Collision Matrixでレーンとフェンスにつけたレイヤー同士の交点のチェックを外します。


トップページへ


tags: ボーリング, ボウリング, Archipack, アドオン, アニメーション, 衝突, レイヤー