前回の記事でTime.timeScale=0を使わずにポーズ動作を実現する方法について書きました。 しかし、Rigidbodyコンポーネントを持ったゲームオブジェクトでは、ポーズしてもそのまま物体をすり抜けて慣性で動き続けてしまいます。 逆にRigidbodyを使わないゲームオブジェクトであれば前回の記事で公開したスクリプトだけでも十分でしょう。 今回はRigidbodyのポーズ動作も考慮したポーズ動作の実現方法について書きます。 結論から言うと、rigidbodyコンポーネントのSleep()、WakeUp()メソッド呼び出しで実現できます。 しかし、上記だけではWakeUp()メソッドの実行時に物体の速度と角速度が0になってしまいます。 この問題を解決するために、WakeUp()呼出し後にSleep()呼び出し前の物体の速度と角速度に戻す必要があります。 これらを考慮することで、綺麗な
![[Unity] ポーズ動作をTime.timeScale=0を使わずに実現する(その2)](https://cdn-ak-scissors.b.st-hatena.com/image/square/f499c91fae35c2ad5b49d6e3df44614bdc798bf3/height=288;version=1;width=512/https%3A%2F%2Fftvoid.com%2Fblog%2Fwp-content%2Fthemes%2Fdp-colors%2Fimg%2Fpost_thumbnail%2Fnoimage.png)