【Unity】11.7 布料
分类:Unity、C#、VS2015
创建日期:2016-05-02
一、简介
Unity提供了两种布料组件:交互布料(Interactive Cloth)、蒙皮布料(Skinned Cloth)。为人形动画添加布料组件后,就可以利用布料渲染器将其渲染出来。
二、交互布料(Interactive Cloth)
交互布料组件(Interactive Cloth)可在一个网格上模拟类似布料的行为状态,如果希望在场景中使用布料,可以用这个组件来实现。
1、添加交互布料组件
添加交互布料组件的方法如下:【Component】->【Physics】->【Interactive Cloth】。
因为交互布料组件与布料渲染器组件存在依赖关系,所以当布料渲染组件存在于某个游戏对象上时,交互布料组件不能被移除。
2、属性
交互布料组件(Interactive Cloth)在检视器中显示的主要属性如下:
·Bending Stiffness:弯曲刚度。设置布料的抗弯曲程度,数值在0~1之间,值越大越不容易弯曲。
·Stretching Stiffness:拉伸刚度。设置布料的抗拉伸程度,数值在0~1之间,值越大越不容易拉伸。
·Damping:阻尼。该项用于没置布料运动的阻尼。
·Thickness:厚度。设置布料表面的厚度。
·Use Gravity:是否使用重力。勾选该项后,布料会受到重力的影晌。
·Self Collision:自身碰撞。勾选该项后,布料将开启自身碰撞检测,以防止布料发生自身穿插的现象。
·External Acceleration:外部加速度。应用到布料上的外部加速度。
·Random Acceleration:随机加速度。将一个随机数应用到布料上的外部加速度。
·Mesh:网格。指定用于模拟互动布料的网格,单击右侧圆圈按钮可在弹出的网格选择对话框中选择网格。
·Friction:摩擦力。设置布料的摩擦系数,取值在0~1之间。
·Densit:密度。设置布料的密度。
·Pressure:压力。设置布料内部的压力,仅用于封闭的布料。
·Collision Response:碰撞反应。没置与布料相碰撞的刚体施加力的大小。
·Attachment Tear Factor:附加撕裂因子。设置附加刚体的布料在撕裂前可以拉伸的程度。
·Attachment Response:附加反应。设置对于附加的刚体施加的力度。
·Tear Factor:撕裂因子。设置布料的顶点可拉伸的距离,大于此距离布料会被撕裂。
·Attached Colliders:附加的碰撞体。设置包含与布料绑定的所有碰撞体的数组。其中:
Size:碰撞体的个数。
Collider:附加的碰撞体。
Two Way Interaction:勾选该项则启用双向互动功能。
Tearable:勾选该项则布料可以被撕裂。
三、蒙皮布料(Skinned Cloth)
蒙皮布料组件(Skinned Cloth)与蒙皮网格渲染器一起用来模拟角色身上的衣服。如果角色动画使用了蒙皮网格渲染器,则可以为其添加一个蒙皮布料,使其看起来更加真实、生动。
1、添加蒙皮布料组件
添加蒙皮布料的办法为:选择—个有蒙皮网格渲染器组件的游戏对象,依次打开菜单栏中的【Comoonent】->【Physics】->【Skinned Cloth】。若该对象之前没有蒙皮网格渲染器,此时也会将其一并添加上。
当使用蒙皮布料组件时,它将从蒙皮网格渲染器中获取顶点并依次来模拟布料。
2、属性
蒙皮布料组件对每个顶点都有一些参数,这些参数模拟了布料相对于蒙皮移动的自由度。属性面板中有3个标签。
(1)顶点选择工具属性面板
在此模式下。可以在场景中选择顶点并在面板上设置其参数。按住Shift键或用鼠标框选可以一次性选择多个顶点并设置参数,当选择多个顶点时,属性面板上会显示这些顶点的平均值。若改变这个值,则所有的顶点都会被设为同样的值。如果将Scene视图切换到线框模式,可以看到并且选择背面的顶点,这在选择角色的整体时非常有用。
单击参数区旁的眼睛图标,编辑器会使这些参数在Scene视图中可视化:参数值最小的会显示为绿色的点,中间范围值的点为黄色,最高值的点为蓝色。
(2)顶点喷涂工具属性面板
与定点选择工具相似,顶点喷涂工具可帮助设置顶点参数,与顶点选择工具不同,在改变数值之前不需要选中顶点:在该模式下只需要键入想要没定的值,然后激活参数旁边的笔刷开关,再选中要设置的顶点即可,被笔刷选中的顶点的值就变成了刚才所设定的值。
(3)没置标签属性面板
此标签用于设置蒙皮布料的各种属性。
·Bending Stiffness:弯曲强度。没置布料的抗弯曲程度,数值在0~1之间,值越大越不容易弯曲。
·Stretching Stiffness:拉伸刚度。设置布料的抗拉伸程度,数值在0~1之间,值越大越不容易拉伸。
其他属性和交互布料的属性相似。除此之外,还有两个属性:
·World Velocity Scale:世界速度比例。该项数值决定了角色在世界空间的运动对于布料顶点的影响程度,数值越高的布料对角色在世界空间运动的反应就越剧烈,此参数也决定了蒙皮布料的空气阻力。
·World Acceleration Scale:世界加速度比例。该项数值决定了角色在世界空间的加速度对于布料顶点的影晌程度,数值越大的布料对角色在世界空间运动的反应就越剧烈。如果布料显得比较生硬,可以尝试增大此值,如果布料显得不稳定可以减小此值。
四、布料渲染器(Cloth Redderer)
布料渲染器(Cloth Redderer)属性面板中的相关属性如下。
·Cast Shadows:投射阴影。勾选此项,则布料将会投射阴影。
·Receive Shadows:接收阴影。勾选此项,则布料将会接收阴影。
·Materials材质。该项用于为布料选择材质。单击该项右侧的圆圈按钮,在弹出的对话框中可以为布料指定材质。
·Use Light Probes:使用光照探测。勾选此项,则光照探测将被激活。
·Light Probe Anchor:灯光探测锚点。若指定的话,灯光探测照明信息(Light Probe Lighting)使用物件的中点和探测器锚点之间的插值。
·Pause When Not Visible:不可见时暂停。勾选此项,则布料在摄像机视野之外的时候将不会计算模拟效果。