キャラクターを動かしたら壁にめり込んだ。弾を速くしたら壁をすり抜けた。移動を書き換えたらガクガク震え出した——物理まわりのトラブルは、だいたい「物理エンジンの流儀」を知らずにtransformと物理を混ぜてしまったときに起きます。
その流儀の中心にいるのが Rigidbody(リジッドボディ/剛体) です。ゲ ームオブジェクトをUnityの 物理エンジン(NVIDIA PhysX) の管理下に置き、「物理法則に従う物体」として振る舞わせるコンポーネントです。この記事では、Rigidbodyの役割とtransformとの正しい使い分け、力と速度によるオブジェクトの動かし方を解説します。
この記事でわかること
Rigidbodyを付けると何が起きるのか(重力・力・衝突・抗力)transform操作とRigidbody操作の決定的な違いAddForceとlinearVelocityの使い分けとForceMode4種Is Kinematic・Constraintsなど重要プロパティの実務的な使いどころ- Unity 6でのAPI名の変更(
velocity→linearVelocityなど)
動作確認環境: Unity 6 (6000.x)