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

フタバゼミ
ゼミノート

【Unity C#】他のオブジェクトに接近すれば繋がる

他のオブジェクトに対して、特定の距離まで近づけば、くっついて繋がるしくみを作ってみましょう。

Cube(プレーヤー)を操作し、Sphereに最接近したタイミングで、固定ジョイントをONに。

つながったSphereは、Cubeと一緒に動きます。

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

Cube(ジョイントされる側)

CubeとSphereを作成します。

Cubeの位置を、X:-3、Y:4に変更しました。

2つのオブジェクトがこのように配置されています。

Cubeにリジッドボディを追加し、以下の項目を設定します。

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

CubeMove.csを記述します。

高さ4の位置で、十字キーによる操作が可能になります。

Sphere(ジョイントする側)

固定ジョイントは、Sphereのほうに追加します。

Sphereを選択し、コンポーネントを追加 > 物理 > 固定ジョイント

FixedJoint と RigidBody の2つのコンポーネントが追加されます。

続いて、JointOn.csを作成して、Sphereに追加します。

JointOn.csを記述します。

ゲームプレイしてみましょう。

距離4.1まで近づけば、FixedJointが有効になり、Sphereを保持したまま動いていきます。

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