双方都要有碰撞器,一方持有刚体,最好是移动的一方有持有刚体。旋转设置-->constraints-->设置 rotation。抖动-->位移和刚体冲突了。使用刚体组件的移动。
tilemap collider 2d 合并碰撞 Composite collider 2d --->勾选Tilemap collider 2d 的used by composite.
双方都要有碰撞器,一方持有刚体,最好是移动的一方有持有刚体。旋转设置-->constraints-->设置 rotation。抖动-->位移和刚体冲突了。使用刚体组件的移动。
tilemap collider 2d 合并碰撞 Composite collider 2d --->勾选Tilemap collider 2d 的used by composite.
问题:当物体移动速度过快时,物体直接穿透其他物体而不产生碰撞。
因为每一帧的检测时间大概是0.02秒,也就是说速度过快,在不用0.02秒的时间就已经穿过了其他物体,那么这个时候是无法检测之间的碰撞信息的。
办法:
将需要快速运动的物体中的
Rigidbody 2D
→
Collision Detection(碰撞检测)
由 Discrete(离散的)设置为Continuous(持续的)
1.发生碰撞的条件
刚体组件Rigidbody2D最好是运动的物体,比如人物的运动。
碰撞器组件BoxCollider2D两者都需要有
防止角色旋转:RigidBody2D模块下Constraints选择Freeze Rotation
防止角色抖动:在挂载的RubyController中改为利用刚体带动角色移动