Unity 物理引擎Cloths布料

本文深入探讨了Unity中布料物理模拟的实现方法,包括控制点的最大移动距离、表面嵌入效果、布料属性如拉扯硬度和柔软度的设置,以及如何通过调整参数减少布料穿透和增加碰撞稳定性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

布料

第一步:

第二步:MaxDistance

1. 点击出现编辑面板

2. 当前控制点可移动的最大距离

3. Select 表示先用鼠标选中点比如4,然后在进行设置相关属性例如5可移动最大距离为5

Paint表示先设置可移动最大距离1 ,再选点2。

第三步:选中两个点设置最大距离为0如下(如果想多选点的话要同时按下Shift键)

运行:

第四步:Surface Penetration 表面嵌入,一般模拟布料的褶皱效果

编辑面板总结:

Cloth组件的属性介绍及总结:

布的拉扯硬度。
布的柔软度(塑料布值大些,窗帘值小些)
布料相邻两点的衔接度,勾上表示相互团结,减少过度拉伸
重力加速度应该施加到布料上吗?
运动阻尼系数
施加在布上的恒定的外部加速度
施加在布料上的随机的外部加速度

 

 

(利用数值模拟风效)
角色在世界空间的移动对布料顶点的影响有多大?
角色的世界空间加速度对布料顶点的影响有多大?

(共同组成布料运动时的物理模拟造成的影响比例比如说行驶的汽车上得小旗帜)
布与角色碰撞时的摩擦,因为布料的物理模拟是单向的,一般为默认值。
碰撞质量一般也为默认值。

 


增加消耗,减少直接穿透碰撞的几率。
增加一个虚拟粒子,以提高碰撞稳定性
每秒求解器迭代次数
布的睡眠阈值

布料作用的碰撞体

减少穿透:1.布料多一些Mesh顶点,网格密一些
                  2.把胶囊体碰撞器再变大一些

                  3. 下面的也都要勾选

两个球本质上也是胶囊体

下面介绍布料的自碰撞

自碰撞,防止布穿透自身。

相互碰撞,这使得布粒子相互碰撞。

要应用自碰撞或相互碰撞,您需要选择一组粒子来应用碰撞。要选择一组粒子进行碰撞,点击选择按钮:

布粒子自动出现的皮肤网格与布的组成部分。首先,所有的布粒子都没有设置为使用碰撞。这些未使用的粒子呈现黑色:

勾选Self Collision和Intercollision复选框,将碰撞应用到选中的粒子:

要启用布的自碰撞行为,要去布的自碰撞部分检查窗口并设置

Distance:每个粒子周围球体的直径。Unity确保这些球体不会在模拟中重叠。距离应该小于构型中两个粒子之间的最小距离。如果距离较大,自碰撞可能会违反一些距离约束,导致抖动。

Stiffness:粒子之间的分离冲动应该有多强。解布器计算这个,它应该足以保持粒子分离。

paint和擦除模式允许你添加或删除粒子使用的碰撞按住鼠标左键并拖动个别的布粒子:

在绘制或擦除模式下,指定用于碰撞的粒子为绿色,未指定的粒子为黑色,笔刷下方的粒子为蓝色:

打开物理设置(在Unity的主菜单中:编辑>项目设置,选择物理类别),在布料的碰撞部分将距离和硬度设置为非零值:

 双面材质:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值