unity Rayfire破碎插件的踩坑点

阅读本篇时,需要先学习Rayfire插件

1.有些模型在一开始运行的时候,即使没有受到外力,也有一部分开始破碎了!

这是因为模型使用的是MeshCollider,连接处可能会发生碰撞(几乎是一定的)。避免这样应该在RayfireRigid中,勾选IgnoreNear ,如图1

图1

这样碎块之间就不会发生碰撞,只有外力才会让他碎开

2.一运行时,整个物体直接掉了

这是因为使用了Dynamic动态检测,一开始就被判定为掉落,应该设置为Inactive ,如图2

【图2】

3.碰撞发生了,但是碎块只是产生位移,没有掉下去

这是因为没有设置激活条件 ,激活条件一般是通过位移,比如位移超过了0.2,就激活碎块掉落,如图3:

【图3】

也可以设置其他激活方式

4.对于高楼建筑,底部的碎块全都塌了,但是上层还是浮空的状态

这个就需要用到Rayfire Connectivity了,把这栋建筑看成一个整体,我们先使用默认设置,把Rayfire Connectivity挂上,然后RayfireRigid勾选Connectivity ,如图4,图5

【图4】

【图5】

这种是最基础的设置,仅仅是把碎块连接在一起,但是碰撞时会出现问题,下一点会说到

5.使用Connectivity后,碰撞时整栋建筑一起跟着碰撞了,不会有碎块掉下来

问题如图6

【图6】

这里需要另外一个组件Rayfire Unyielding,给建筑设置一个地基,这样底座就不会跑

挂上脚本Rayfire Unyielding,设置好size,如图6,图7

【图6】

【图7】

这样再运行,建筑就不会跑了,并且底层全都塌掉时,上层建筑也不会浮空,但是可能还有问题,继续看下一个问题

5.设置好地基后,塌陷时,上层建筑还是视为一个整体

因为之前用了Connectivity,已经视为一个整体了,所以倒塌时,只有地基会产生碎块,上面是一整个建筑倒下来,并不会有碎块

当然如果效果可以那就不用再改设置了,如果效果不好,可以看下面

将Connectivity,取消勾选Clusterize,如图8

【图8】

这样我们看两次的对比,如图9,图10

【图9】

【图10】

6.如果勾选和取消勾选Clusterize,两个效果我都不满意怎么办?

假如我既想要建筑物为一个整体,他们塌陷时,第一时间应该是一个整体,上半层碰到地面时,开始逐渐碎开,这时不应该是一个整体了

这时就勾选Connectivity的Demolishable,表示让集群进一步破碎,可以做出建筑物逐渐坍塌的效果,而不是一口气全部变成碎块,如图11,图12,图13

【图11】

【图12】

【图13】

相关推荐
辻弋2013 天前
五年前的旅行视频糊成马赛克?Video2X用Real-ESRGAN逐帧重建细节,但只支持Windows、集显用户建议直接放弃
服务器·数据库·windows·游戏引擎·电脑
Martina_03213 天前
AI生成3D场景导入 Unity/Unreal 后,NPC 总串层?用6步检查导航高度与跨层连接
人工智能·游戏·数学建模·3d·unity·自然语言处理·aigc
小贺儿开发3 天前
Unity 局域网遥控幻灯片展示工具 3.0
科技·http·unity·工具·ppt·通信·网页
WarPigs5 天前
Unity对象不应该使用null传播的问题
unity
每日出拳老爷子6 天前
【VR】【Unity】抓走转放系列21|一天搭完门和抽屉工具槽:小场景按这个次序拼装
unity·vr·驱动·排错·snap zone
淡海水7 天前
02-02-原理篇-分代GC
算法·unity·c#·游戏引擎·.net·gc
小贺儿开发7 天前
Unity 文物新生 会讲故事的文物展墙
人工智能·科技·unity·ai·视频·互动·演示
淡海水7 天前
02-03-原理篇-大对象堆
unity·c#·游戏引擎·.net·gc
WarPigs8 天前
Unity在Create菜单添加创建自定义脚本模板选项
unity
郝学胜-神的一滴8 天前
C++ Templates 01:拨开迷雾,读懂C++模板经典著作
开发语言·c++·程序人生·游戏·游戏引擎·软件构建