Unity中模型动态添加贴合模型的BoxCollider,适用于多模型组合的,并且旋转后的模型
2022-08-14 01:21 作者:TenderRain- | 我要投稿
笔记记录,由于项目需求需要给模型动态添加或者更新贴合模型的BoxCollider,因为模型没有规范的,有些模型是旋转过的,有些是由多个模型组合成一个完整的模型,因此在网上找了很多介绍和动态添加贴合模型的BoxCollider的方法和脚本,要么只适用于单个模型的,不适用于多个模型组合而成的,要么适用了多个模型组合的,但是对旋转过的模型,又不适用因为模型旋转了再添加的BoxCollider后计算出来的碰撞盒是没旋转前的数据,导致不能和模型匹配而有问题。下面这个方法可以同时适用于多个模型组合而成的模型,并且适用于旋转过的模型,由于适用于多个模型组合的,因此可以在父节点上没有Mesh组件直接查找所有子物体创建一个贴合模型的BoxCollider,脚本如下:
使用时直接通过调用MeshTool.SpownCollider(targetTransform)方法即可,参数填写需要添加BoxCollider组件的对象的Transform。