どんな状態だったか
1枚目の画像のように、inspector内のtransformのpositionのyを0に指定
したのに、2枚目の画像のようにキャラクターが浮いてしまいました。
↓0に指定したのに再生ボタンを押すとYが1.43になってしまう。
原因
CharacterControllerの衝突判定をしているHeightをキャラクターより大きくして、はみ出た部分を地面埋め込むように設定していたのが原因でした。
↓衝突判定の楕円が地面にめり込んでしまっている様子。実際はめり込まずにキャラクターを押し上げてしまう。
解決方法
CharacterControllerのCenterとHeightの数値を調整して、下記の図のように衝突判定のエリアが地面にめり込まないようにすることで解消できます。
ちなみに筆者の場合はキャラクターの全長が0.8だったので、下記の図のようにCenter = 0.4,Height = 0.8 としたら浮かばず接地した状態にすることができました。
↓Center = 0.4,Height = 0.8とした。
参考
CharacterControllerの細かい説明は下記のサイトに記載があるので興味があればみてみてください。
公式リファレンス:
https://docs.unity3d.com/ja/2019.4/Manual/class-CharacterController.html