rigidbody のついたオブジェクトは回転及び位置の固定を設定する事ができる。以下は Inspector から設定する場合の画面。計6箇所チェックボックスがあるのがわかる。
これをスクリプトから編集するにはどうするか。rigidbody にある constraints 変数を変更します。
// 回転、位置ともに固定
rigidbody.constraints = RigidbodyConstraints.FreezeAll;
// 回転しない設定
rigidbody.constraints = RigidbodyConstraints.FreezeRotation;
// 移動しない設定
rigidbody.constraints = RigidbodyConstraints.FreezePosition;
// 位置 X だけ固定
rigidbody.constraints = RigidbodyConstraints.FreezePositionX;
複数のポイントを設定する場合は以下のように組み合わせる事ができます。
// 位置固定、回転の X と Y を固定。
rigidbody.constraints =
RigidbodyConstraints.FreezeRotationX |
RigidbodyConstraints.FreezeRotationZ |
RigidbodyConstraints.FreezePositionY;
あんまり使わないかもしれないがせっかく調べたのでメモしておこう。
Sponsored Link