RigidBody でキャラの動く速度の調整

自分のUnityでのアクションゲームの作り方は、プレイヤーにRigidBodyをアタッチして、ボタンをタップした時に RigidBody.AddForce() してキャラを動かしています。

ググると Update() で AddForce している例も見かけるのですが…まだまだ勉強不足感が否めない。
なにより…動かす速度の調整が一番うまく実現できていない…。

 

最初のアプリでも、うまく調整できず…苦し紛れに Time.timeScale で速度を調整しました。
幸い、キャラがプレイヤーのみだったので、ゲームの時間の流れを早くすればそれっぽく見えるようになりました。

 

しかし、次のアプリでは、アイテムの落下速度だけをどんどん早くして、プレイヤーの速度はそのままにしたいので、Time.timeScaleの方法ではうまくいかない…。

どうしたものかとググっていると、RigidBody のプロパティに Drag というのがありました。

「 Drag 」値が低いと、オブジェクトが重く見えるようになります。この値が高いと、軽く見えます。
「 Drag 」の通常の値は、.001 (金属の塊) と 10 (羽) の間です。

ということで、最初は Drag の値を大きめに設定し、難易度を高くするために 次第に Drag の値を小さくするようにしました。


Add a Comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です