Unity 4.3 CharacterController collision with physics 2D not working

Hi, I’ve been experimenting with the new Unity 4.3 update and have run into a problem regarding collisions.

I have set an object with a CharacterController component and a sprite object with a physics 2D polygon collider.

For some reason the controller doesnt collide with the sprite object when they come into contact and it passes through. I’ve tried the same with a rigidbody as in the tutorial and that works, however programming character controls with a rigidbody is more cumbersome.

I want to confirm if this has anything to do with the CharacterController component not working with Physics 2D. Thanks.

After an initial look, it doesn’t look like there is a charactercontroller in 2D for the new unity API. It’s become apparent that they have split up their major tasks between 3d and 2d specifically, such as Collider2D, Physics2D, etc. Chances are you may be out of luck in getting CharacterController to work with physics 2D, but don’t quote me on that. If you feel something is up do a little more research.

about programming controls for a rigidbody, you’d be surprised, it’s actually very decent and manageable working with rigidbody2D, and it’s probably the reason they didn’t implement characterController2D (either that or they have not gotten to it yet).

what you can do is the following, give the object a collider and rigidbody, and if it has animations, an animator component. This way you are at least guaranteed interactivity.

for moving an object via rigidbody, the following code should suffice, provided you have set the drag parameter to a value so that it will stop over time:

if(Input.GetButtonDown("Fire1")) //just an example of input
rigidbody2D.AddForce(-Vector2.up * moveSpeed*Time.deltaTime);
 //vector2.up and vector2.right are the only ones in the class, but you can negate them to get the other directions

of course moving by position is one of the main things to do with rigidbodies, besides rotating or scaling. Again you’d probably still need to do your research for a better answer. For now this is the best I got.