Rigidbodyソース一覧

Rigidbodyは物理シミュレーションに関わる部分です。

Inspector インスペクタでもいじれるところ
rigidbody.mass=10; 質量を10にする
rigidbody.drag=10; ドラック(空気抵抗)を10にする
rigidbody.angularDrag=10; 角度ドラックを(空気抵抗で回転する率)を10にする
rigidbody.useGravity=true; 重力を有効化
rigidbody.useGravity=false; 重力を無効化
rigidbody.isKinematic=true; 物理演算の影響を有効化
rigidbody.isKinematic=false; 物理演算の影響を無効化
rigidbody.constraints=RigidbodyConstraints.FreezePositionX; X軸方向の物理演算の影響を制限する
rigidbody.constraints=RigidbodyConstraints.FreezePositionY; Y軸方向の物理演算の影響を制限する
rigidbody.constraints=RigidbodyConstraints.FreezePositionZ; Z軸方向の物理演算の影響を制限する
rigidbody.constraints=RigidbodyConstraints.FreezeRotationX; 物理演算によるX軸方向の回転を制限する
rigidbody.constraints=RigidbodyConstraints.FreezeRotationY; 物理演算によるY軸方向の回転を制限する
rigidbody.constraints=RigidbodyConstraints.FreezeRotationZ; 物理演算によるZ軸方向の回転を制限する
rigidbody.constraints=RigidbodyConstraints.FreezePositionX|RigidbodyConstraints.FreezePositionY; 複数のconstraintsを付けるときは縦棒みたいな記号を挟む(この場合X、Y軸の方向を制限)
rigidbody.constraints = RigidbodyConstraints.None; constraintsによる制限を解除
rigidbody.interpolation = RigidbodyInterpolation.None; (interpolationをNoneにする…らしい)
rigidbody.interpolation = RigidbodyInterpolation.Interpolate; (interpolationをInterpolateにするよ?)
rigidbody.interpolation = RigidbodyInterpolation.Extrapolate; (interpolationをExtrapolateにしたところで、何が起こったか知らない)
rigidbody.collisionDetectionMode = CollisionDetectionMode.Discrete; 衝突判定の検出タイプをDiscreteに変更する
rigidbody.collisionDetectionMode = CollisionDetectionMode.Continuous; 衝突判定の検出タイプをContinuousに変更する
rigidbody.collisionDetectionMode = CollisionDetectionMode.ContinuousDynamic; 衝突判定の検出タイプをContinuousDynamicに変更する
velocity 速度ベクトル
rigidbody.velocity = Vector3(0,10,0); Vector3(x,y,z)方向に速度ベクトルを加える
Vector3(0,10,0)の場合、10の速度で上に跳ねる
rigidbody.velocity.x=10; X方向の速度ベクトルを10にする
rigidbody.velocity.y=10; Y方向の速度ベクトルを10にする
rigidbody.velocity.z=10; Z方向の速度ベクトルを10にする
rigidbody.velocity.x+=10; X方向に10の速度ベクトルを加算する
rigidbody.velocity.y+=10; Y方向に10の速度ベクトルを加算する
rigidbody.velocity.z+=10; Z方向に10の速度ベクトルを加算する
angularVelocity 角速度ベクトル
rigidbody.angularVelocity = Vector3(0,10,0); Vector3(x,y,z)軸の角速度ベクトル
Vector3(0,10,0)の場合、10の速度で回転する
rigidbody.angularVelocity.x=10; X軸の角速度ベクトルを10にする
rigidbody.angularVelocity.y=10; Y軸の角速度ベクトルを10にする
rigidbody.angularVelocity.z=10; Z軸の角速度ベクトルを10にする
rigidbody.angularVelocity.x+=10; X軸の角速度ベクトルを10加算する
rigidbody.angularVelocity.y+=10; Y軸の角速度ベクトルを10加算する
rigidbody.angularVelocity.z+=10; Z軸の角速度ベクトルを10加算する
AddForce オブジェクトに力を加える
rigidbody.AddForce(0,0,10); (x,y,z)方向へ、オブジェクトに力を加える
rigidbody.AddForce(Vector3.right * 10); x方向に力を加える
rigidbody.AddForce(Vector3.up * 10); y方向に力を加える
rigidbody.AddForce(Vector3.forward * 10); z方向に力を加える
rigidbody.AddForce(Vector3.left * 10); -X方向に力を加える
rigidbody.AddForce(Vector3.down* 10); -y方向に力を加える
rigidbody.AddForce(Vector3.back * 10); -z方向に力を加える
rigidbody.AddForce(Vector3.zero); 全方向の力を0にする
rigidbody.AddForce(Vector3.right * 10, ForceMode.Force); Forceモードで、X方向に力を加える
(継続的な力の追加)
rigidbody.AddForce(Vector3.right * 10, ForceMode.Impulse); Impulseモードで、X方向に力を加える
(瞬間的な力の追加)
rigidbody.AddForce(Vector3.right * 10, ForceMode.Acceleration); Accelerationモードで、X方向に力を加える
(継続的な加速変化)
rigidbody.AddForce(Vector3.right * 10, ForceMode.VelocityChange); VelocityChangeモードで、X方向に力を加える
(瞬間的な加速変化)
AddRelativeForce 座標に対して、相対的な力を加える
rigidbody.AddRelativeForce (0, 0, 10); (x,y,z)が向く方向に、力を加える
rigidbody.AddRelativeForce(Vector3.right * 10); X座標の矢印が向く方向に、力を加える
rigidbody.AddRelativeForce(Vector3.right * 10, ForceMode.Force); Forceモードで、X 座標の矢印が向く方向に、力を加える
AddTorque 回転する力を加える
rigidbody.AddTorque (0, 0, 10); (x,y,z)に回転する力を加える
rigidbody.AddTorque(Vector3.right * 10); X方向に回転する力を加える
rigidbody.AddTorque(Vector3.right * 10, ForceMode.Force); Forceモードで、X方向に回転する力を加える
AddRelativeTorque 座標に対して、相対的な回転する力を加える
rigidbody.AddRelativeTorque (0, 0, 10); (x,y,z)座標に対して、相対的な回転
rigidbody.AddRelativeTorque(Vector3.right * 10); X座標の矢印が向く方向に、回転する力を加える
rigidbody.AddRelativeTorque(Vector3.right * 10, ForceMode.Force); Forceモードで、X 座標の矢印が向く方向に、回転する力を加える
AddForceAtPosition 力と回転の併せ技。
rigidbody.AddForceAtPosition(Vector3.up * 10, Vector3.right * 10); Y方向に力を加えながら、X方向に回転
rigidbody.AddForceAtPosition(Vector3.forward * 10, Vector3.up * 10); Z方向に力を加えながら、Y方向に回転
rigidbody.AddForceAtPosition(Vector3.forward * 10, Vector3.up * 10, ForceMode.Force); Forceモードで、Z方向に力を加えながら、Y方向に回転
inserted by FC2 system