分析原因
由于多个box collider 拼接之后,此种情况最常出现于2D游戏开发中Tile Map 的Tile Collider 组件,当人物的collider为box collider,由于相互重合,unity的浮点数计算问题,导致,其box collider之间并不是绝对水平的,锁定,Z轴旋转后,就会导致卡住的现象发生。
解决方法
在设置了Tile Map 的Tile Collider 之后,需要为其添加Compose Collider,并将Tile Collider 勾选 use for compose选项,由于compose Collider会自动添加一个rigidbody,可将其设置为静态static,
如此一来,整个的tile map会形成一个整体的collider,上述情况便迎刃而解