Problem with CharacterController bounds

Hi, I need to get the bounding rectangle for a CharacterController. I tried using the CharacterController.bounds property, but it gives me a perfect cube centered near the top of the controller’s capsule collider – basically, completely unrelated to the actual collider (I have a Bounds drawer function that I know works correctly which I’m using to debug this problem). I don’t know why this happens, but I decided to just ignore it and make my own function to compute it. Unfortunately, I can’t get this function to work either; the dimensions are correct but the Bounds is substantially above where it should be. My code for computing the Bounds is (fyi the game is 2D, so the z component is irrelevant):

return new Bounds(transform.position + (1.0f * Controller.center),
                  new Vector3(Controller.radius, Controller.height, 0));

Would anybody know either 1) what could possibly make CharacterController.bounds give a useless Bounds, or 2) why my own code gives an incorrect Bounds?

Fixed my code! The problem was that I didn’t take the player’s velocity into account, and the bounds lagged a bit behind his actual position. So I have the bounds correctly computed now, although I’d still like to know why the CharacterController.bounds property doesn’t work correctly.

In fact, collider.bounds mysteriously returns a cube for the CharacterController - the X and Z extents are ok, but the Y should be 1 instead of 0.4 (First Person Controller prefab values). But the bounds position is ok: it’s centered at the CC position. I suppose that your problem is related to the gravity action: if you print the bounds at Start, it shows the initial CC position, but gravity pushes the character down to the ground, thus the values printed seem to be above the character - they are actually outdated because the character fell to ground.