Hi, I’m currently learning on importing a 3D model (.fbx)
I’ve added the mesh collider and tick the “convex” box. The player collides, but not the collision detection. The mesh collider’s position is above the 3D object… here’s the image…
how to make its position the same as my model???
Apply the Mesh Collider to the actual Mesh instead of the entire object. That should fix the problem. (And that goes for all of you! And anyone who has this issue in the future!)
If your collider is oriented improperly, offset, scaled too large or small, or doesn’t exactly match your mesh (and you can check that most of the time by ticking off “Concave/Convex”), then it’s likely that you have the mesh applied to the wrong part of the object.
I just had the same problem and I found out that I need to put the pivot point of both meshes in the same coordinates.
Just put them on 0.0.0 x.y.z, that way you won’t be confused.
I used Cinema 4D.
Make an empty game object and parent it to the model, add the mess renderer to the empty then select the mess, move and orient the empty to match the model.
Ok, so I did what Ayelis said, because the problem I had was that it was rotated 90 degrees to what it was suppose to be. And when I did what Ayelis said, it fixed it, but then it was too low. So then I duplicated the object with the mesh, removed everything from that duplicate, except for the mesh collier, and then moved that up so that it matched the model, and that fixed the problem. Hope this helps!
In Blender, position the Mesh Collider object over your Model object so the physics lines up correctly then select both objects and apply Location (central A → Location). Now they have both got the same location export them (I used .dae) and add the Mesh collider in Unity - worked perfectly for me!
And for rotation issue see this link
There isn’t one type of issue regarding aligning mesh collider with the object’s mesh zizocg has rised onother side of the issue. In my case, it was the rotation and the origin of the object in Blender that didn’t translate correctly.
IE: mesh is aligned too far in Y axis and rotated 90 degree
The SOLUTION 100% working has to be done in your 3D application:
- Change the origin /pivot of the mesh collider to match the object you wont to apply mesh collider to it.
- Rotated the mesh collider -90 degrees then apply rotation only. rotate again 90 degrees don’t apply this time.
- when you export use FBX Units Scale
- apply all transforms then UNCHECK ROTATION this will reset the origin and adjust size/scale for fbx export we already fixed rotation in step 2.
- If you didn’t delete the mesh collider from unity assets do it then reimport again
- add mesh collider component to your Object they match to the perfection.
Blender 2.93.4 / Unity 2019.4.31f1