読者です 読者をやめる 読者になる 読者になる

うさがにっき

読書感想文とプログラムのこと書いてきます

UnityのJoint(複数の物理演算オブジェクトの結合)を使う

Unity

概要

UnityのJointを使う

  • SpringJoint2D…2つのスプライトをバネでつなぐ
  • DistanceJoint2D…2つのスプライトを一定の距離でつなぐ
  • HingeJoint2D…2つのスプライトを蝶番でつなぐ

詳細

SpringJoint2D

2つのスプライトをバネでつなぐ
片方を物理演算対象外にすると、もう一方がバネで吊るされたような動きをする

Collide Connected ジョイントされたオブジェクト同士がぶつかるかを判定
Connected Rigidbody ジョイントするオブジェクトを指定
Anchor アンカーポイントを指定、中央にするにはx=0,y=0
Connected Anchor 接続対象オブジェクトのアンカーポイントを指定
Distance バネの長さを指定
Damping Ratio バネの振動率を指定
Frequency バネの周波数を指定

f:id:tiro105:20140623215425p:plain

DistanceJoint2D

2つのスプライトを一定の距離でつなぐ
SpringJoint2Dとは違い、一定の距離で動く

Collide Connected ジョイントされたオブジェクト同士がぶつかるかを判定
Connected Rigidbody ジョイントするオブジェクトを指定
Anchor アンカーポイントを指定、中央にするにはx=0,y=0
Connected Anchor 接続対象オブジェクトのアンカーポイントを指定
Distance オブジェクト間の距離を指定

f:id:tiro105:20140623215540p:plain

HingeJoint2D

二つのスプライトを蝶番でつなぐ
ドアのような動き

Collide Connected ジョイントされたオブジェクト同士がぶつかるかを判定
Connected Rigidbody ジョイントするオブジェクトを指定
Anchor アンカーポイントを指定、中央にするにはx=0,y=0
Connected Anchor 接続対象オブジェクトのアンカーポイントを指定
Use Motor モーターを使うか指定、モーターを指定するとオブジェクトが回転しながら動く
Motor Speed モーターの早さ
Maximum Motor Force モーターの回転する力
Use Limits モーターの回転角度

f:id:tiro105:20140623215558p:plain