全文见原始链接:http://note.youdao.com/noteshare?id=ef5ef90b71da4e960e5bc0da4f3f17ec
下面是预览
示例工程链接:https://pan.baidu.com/s/1IhDjeoYXMkZhUsCk66Sl0g 密码:e9zr
如果链接失效,请联系 zouwj5@qq.com
使用Fracturing&Destruction
1. 下载《Fracturing & Destruction》插件:http://download.csdn.net/detail/yongh701/9845202
2. 创建一个物体Cube,作为破碎物体的源物体。
3. 创建一个破碎物体
4. 设置这个破碎物体的各项属性
5. 当有重物撞击它时,它会破碎。效果如下:
6. 如果用代码来引爆爆炸,可以用 FracturedObject 的 Explode函数。
7. 一些注意事项:
--1. 不要给破碎物体加Rigidbody、Collider
--2. 源物体最好SetActive(false)
--3. 破碎物体无法用作Prefab,所以应该将之保留在场景中,并以克隆模式去实例化(克隆)它。
--4. 由于破碎物体的碰撞体是多块碎块的Mesh碰撞体的集合,所以未破碎时候的破碎物体表面其实是不平整的,可能会引起物理表现不好,如果在破碎前需要用平整的碰撞体,就要加一个Container,附上一个规则的Collider(C),当破碎以后将C关闭。如果希望碰撞体在某一情况下保持不破碎的状态,那么就保持startstatic且用上述外包装Collider的方法来实现。当需要破碎时,外包装Collider就关闭掉,并且引爆。还有一点Tip,如果破碎物体的碰撞体(F)和外包装的碰撞体(C)的Layer都是Default的话,启用物理(Rigidbody的动力学关闭)时,这两种碰撞体(F和C)将会产生内力,行为异常,所以应该让F和C的layer设置为不一样的层次且不碰撞。