お電話でのお問い合わせ
電話をかける
電話をかける メニューボタン
お知らせカリキュラム・料金教室紹介無料体験授業

フタバゼミ
ゼミノート

【Unity C#】Fixed Jointを解除してオブジェクトを落とす

Fixed Joint(固定ジョイント)をオフにして、オブジェクト同士の繋がりを解除します。

上部のCube(プレーヤー)は十字キーで移動し、スペースキーを押せばジョイント解除。

Sphereが落下します。

関連記事:
【Unity C#】Hingi Jointを使った振り子の動き
【Unity C#】範囲内に入ればオブジェクトを落下させる
【Unity C#】他のオブジェクトに接近すれば繋がる
【Unity C#】特定エリアに近づくと追いかけてくる
【Unity C#】一定距離から外れたら実行する

Cube(プレーヤー)の作成

CubeとSphereを作成します。

CubeのY座標を2に変更し、少し上の方に配置します。

Cubeにリジッドボディを追加し、「重力を使用」のチェックを外します。

ジョイントされる側のCubeは、質量を増やしておきます。

ここでは質量10に設定し、回転を固定にチェックを入れました。

CubeMove.csを作成し、Cubeに追加します。

CubeMove.csを記述します。

Cubeが十字キーで操作できるようになります。

固定ジョイントのオンとオフ

Sphereに固定ジョイントを追加します。

リジッドボディを追加 > 物理 > 固定ジョイント

固定ジョイントを追加すれば、リジッドボディも自動で追加されます。

Fixed Jointの「Connected Body」でCubeを選択します。

これで、Cubeと連結されました。

プレイすると、Cubeと一緒にSphereが移動します。

続いて、連結を解除するためのスクリプトを作ります。

JointOff.csを作成し、Sphereに追加しましょう。

JointOff.csを記述します。

プレイしてみましょう。

スペースキーを押すと、Fixed Jointが切り離され、Sphereが落下します。

関連記事:
【Unity C#】Hingi Jointを使った振り子の動き
【Unity C#】範囲内に入ればオブジェクトを落下させる
【Unity C#】他のオブジェクトに接近すれば繋がる
【Unity C#】特定エリアに近づくと追いかけてくる
【Unity C#】一定距離から外れたら実行する