Search Issue Tracker

By Design



Found in


Issue ID




Rigidbody2d with kinematic rigidbody will not cause OnTriggerEnter2d



To reproduce:
1. Create two 2D cubes with colliders 2d
2. Attach a rigidbody 2D to one of the cubes and make the other cube a trigger
3. Attach a script with OnTiggerEnter2D (and some kind of debug message) to the rigidbody cube
4. Enter play mode and move the cube into the other cube - the debug message should get printed
5. Change the rigidbody 2d to kinematic - the debug message is no longer printed, OnTriggerEnter2d is no longer being called

Explanation: kinematic bodies (specifically colliders attached to those bodies) only collide with dynamic bodies.

The allowed collisions for body types are therefore:
Kinematic can collide with Dynamic
Dynamic can collide with Static, Dynamic & Kinematic
Static can collide with Dynamic

Comments (44)

  1. cbanklee12

    Aug 18, 2020 22:48


  2. shubhamswaraj2021

    Aug 18, 2020 11:22

    good one <a href="">lyricsauto</a>

  3. anguaji

    Sep 18, 2014 10:45

    For anyone struggling with this issue (as I was yesterday after grabbing the PSM Unity which is 4.3.4) - setting your rigidbody collider that would normally be kinematic to NOT kinematic (ie physics has an effect on the object) and then setting the gravity scale of that item to 0 (ie physics has an effect but gravity does not cause item to drop) helped me fix my problem. Good luck to anyone with this issue!

  4. ShadowM8

    Aug 26, 2014 01:01

    I know this is old but for our new project we were going to use the 2D tools and this issue is causing a lot of difficulties.

  5. AronTD

    Jul 07, 2014 22:34

    This is awful.

  6. FireMutant

    Jun 20, 2014 03:59

    2D Physics is useless as long as this issue exists. I'm at a standstill.

  7. Simon Says

    May 24, 2014 22:06

    This just renders the whole 2D physics package unusable, since 3D physics can be used instead and relied upon to behave as expected. Bad design.

  8. KocorJIA3ue

    May 24, 2014 08:45

    Fix it please

  9. metinevren

    May 17, 2014 01:49

    This is still happening in 4.3.4f1. Please help.

  10. Pyrian

    May 12, 2014 14:57

    What's the point of even having a kinematic rigidbody if it still doesn't interact with static colliders? It's barely distinct from a static collider at this point. The documentation suggests that static colliders shouldn't move and if you need to move a collider by script, you should give it a kinematic rigidbody, but that does not work; if you want your object to interact with static colliders, kinematic rigidbodies, or even unmoving non-kinematic rigidbodies, you have to give it a non-kinematic rigidbody and use code to force its position - which is another thing you supposedly shouldn't do.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.