Version: 2023.1
言語: 日本語
Friction Joint 2D
Relative Joint 2D

Hinge Joint 2D

このジョイントを使うと、Rigidbody 2D 物理システムに制御されるゲームオブジェクトを空間の 1点にアタッチして回転させることができます。回転は、受動的なもの (例えば、衝突に対する反応) と、Joint 2D 自身によるモーターの回転力による能動的なもの、どちらも可能です。ヒンジが完全に 1回転しないように制限したり、1回転以上回転するよう設定することもできます。

プロパティ

プロパティ 機能
Enable Collision このプロパティを有効にすると、つながれた 2 つのゲームオブジェクトの衝突が可能になります。
Connected Rigidbody このジョイントと接続するもう 1 つのゲームオブジェクトを指定します。ここを None にすると、もう一方の端が、Connected Anchor 設定によって定義された空間の点に固定されます。入力欄の右側にある丸いアイコンを選択すると、接続先オブジェクトのリストを見ることができます。
Auto Configure Connected Anchor このプロパティを有効にすると、この Hinge Joint 2D が接続する他のオブジェクトのアンカー位置が自動的に設定されます。このプロパティを有効にすると、Connected Anchor プロパティの座標を入力する必要はありません。
Anchor ジョイントの端点がこのゲームオブジェクトの (Rigidbody 2D の X、Y 座標の) どこに接続するかを定義します。
Connected Anchor ジョイントの終点が他のゲームオブジェクトに接続する位置 (Rigidbody 2D 上の x、y 座標) を定義します。
Use Motor これを有効にすると、モーター力をジョイントに適用します。
Motor これを選択すると、このプロパティの設定が開きます。
Motor Speed ターゲットのモーター速度 (角度/秒) を設定します。
Maximum Motor Force ターゲット速度に到達するまでにモーターが加えることのできる最大の回転力 (Torque) を設定します。
Use Limits これを有効にすると、回転角度を制限できます。
Angle Limits これを選択すると、角度制限の設定が開きます。User Limits が有効な場合に使用される制限を設定します。
Lower Angle 制限されている回転角の最小値を設定します。
Upper Angle 制限されている回転角の最大値を設定します。
Break Action 力またはトルクのしきい値を超えた時に実行されるアクションを設定します。
Break Force 力のしきい値を設定します。このしきい値を超えると、ジョイントが、選択された Break Action を実行します。デフォルト値は Infinity 設定されており、これは超えることができません。したがって、しきい値がこの値のままである場合は Break Action は実行できません。
Break Torque 力のしきい値を設定します。このしきい値を超えると、ジョイントが、選択された Break Action を実行します。デフォルト値は Infinity 設定されており、これは超えることができません。したがって、しきい値がこの値のままである場合は Break Action は実行できません。

このジョイントの使用

Hinge Joint 2D は、ゲームオブジェクトが特定の点を中心に回転できるようにするためのジョイントです。例えば、ドアのヒンジ、車輪、振り子などです。

このジョイントを使うと、 2 点をオーバーラップさせる事ができます。それらの 2 点は Rigidbody2D コンポーネント 2 つか、Rigidbody2D コンポーネント 1 つと、ワールド空間での固定位置 1つの組み合わせです。Connected Rigidbody を None に設定すると、Hinge Joint 2D はワールド空間の固定位置につながれます。このジョイントは、接続された Rigidbody 2D GameObject 両方に直線力を与えます。

このジョイントは、オン/オフの切り替えができる回転モーターをシミュレートすることができます。Maximum Motor SpeedMaximum Motor Force を設定して、角速度 ( Torque )を制御すると、2 つのリジッドボディオブジェクトが、互いに相対的な円弧を描くように回転します。円弧に制限をかけたい場合は Lower AngleUpper Angle を設定してください。

制約

Hinge Joint 2D には以下のとおり同時に満たすべき 3つの制約があります。

  • 2 つの Rigidbody 2D オブジェクトのアンカーポイント間の相対的な直線距離の維持。
  • 2 つの Rigidbody 2D オブジェクト上のアンカーポイント間の角速度を維持 (最大トルクは Maximum Motor Force に制限されます)。
  • 回転角を指定した範囲内に維持。

このジョイントを使うと回転軸でつながれているかのような反応をする物理オブジェクトを構築することができます。以下はその例です。

  • 平行部分を基礎に接続したシーソー軸。Hinge joint の Angle Limits を設定して、シーソーの一番高く上がる位置と一番低い位置をシミュレーションできます。
  • ヒンジピボットで繋がっているハサミ。ジョイントの Angle Limits を使用してハサミの最大開閉角度をシミュレートできます。
  • 車体に接続するシンプルなタイヤ。軸によってタイヤの中心が車体につながっています。この例では、Hinge Joint 2D のモーターでタイヤを回転させることができます。

その他の参考資料

  • 他の 2D ジョイントに関する詳細は、2D ジョイント を参照してください。

HingeJoint2D

Friction Joint 2D
Relative Joint 2D