对于nParticle(n粒子)或nCloth(n布料)对象,可以使用约束对其行为进行控制,从而限定其空间位置,或者模拟与其他粒子或布料的某种联系。本章将重点讲解nDynamics(n动力学)模块下的nConstraint(n约束)菜单,主要包括Transform(变换)、Component to Component(组件到组件)和Point to Surface(点到曲面)等命令。
nConstraint(n约束)菜单如右图所示。
下面对每一个命令逐一进行讲解。
功能说明:为选中的Nucleus(内核)对象,即nCloth(n布料)对象的点、线、面或者n粒子对象的粒子,建立Transform(变换)约束。例如,可以给粒子创建一个Transform(变换)约束,将粒子限定在空间中的某一个位置,或者将该约束设成其他粒子的子对象,使其跟随其他对象的运动轨迹进行运动。
操作方法
1对于nCloth(n布料)对象。
01选择n布料的顶点。
02在nDynamics(n动力学)模块中执行nConstraint>Transform(n约束>变换)命令。
在此过程中,Maya会自动创建一个定位器放在所选布料顶点的c几何中心,用此定位器来控制布料顶点。如果选择了一个对象作为约束对象,则该约束对象将控制被约束对象布料的运动,但在约束对象的中心会出现一个定位器的图标,此定位器不能独立控制,只能随约束对象运动。
2对于nParticle(n粒子)对象。
01选择需要进行约束的nParticle(n粒子)对象或者在组件级别下选择要约束的粒子。
02在nDynamics(n动力学)模块中执行nConstraint>Transform(n约束>变换)命令。
选中的nParticles(n粒子)由动态约束节点连接至Maya Nucleus(内核)解算器,约束至其所在的当前空间位置,同时,Maya为其创建一个Transform(变换)约束定位器。
由此,选择nParticle(n粒子)对象,则所有nParticle(n粒子)对象的粒子均受到Transform
(变换)约束,如下图所示。
若为Transform(变换)约束定位器和其他对象创建父子关系动画或约束,则可以更好地控制nParticle(n粒子)的运动。
例如,可以通过为Transform(变换)约束定位器创建动画的方式为已创建变换约束的nParticle(n粒子)云做反方向的引导,从而确定其在天空中的飘动方向。
Transform(变换)约束的常用参数设置。
·Constraint Method(约束方法)通常选择Spring(弹簧式)。
·Component Relation(组件关联)通常选择All to First(全部至首项)。·Connection Method(连接方法)通常选择Component Order(组件顺序)。
参数详解:单击nConstraint>Transform(n约束>变换)打开选项窗口,如下图所示。
Use Sets(使用设置):勾选该选项,将创建动态约束,取消勾选该选项,则创建非动态约束。
当创建了变换约束之后,按Ctrl+A组合键打开属性编辑器,选择dynamicConstraintShape
(动态约束形状)标签,可对动态约束形状节点的属性进行修改,如下图(左)所示。
该节点中的属性可用来控制n布料和n粒子对象的动态约束。
在某些情况下,需要对角色衣服的某些部位进行约束,从而防止衣服发生滑落等现象。例如,通过约束使角色的裤子依附在腿上,或是使裙子的肩带固定在肩膀上等。此外,也可以使用约束将布料拼缀在一起,或是连接一些附属物如,纽扣或衣袋等,这些都可以使用约束命令来实现。
Enable(启用):勾选该选项即可启用动态约束,默认勾选该选项。
在必要的情况下可使用此属性启用或关闭动态约束。启用状态下,被约束布料是动态的,不会重复以初始位置为基准的机械运动,这意味着每次重新激活动态约束时,约束节点的连接将自动重组,且静止长度被自动调整至动态约束重新激活的位置。
Dynamic Constraint Attributes(动态约束属性)该属性的卷展栏如下图(右)所示。
01Constraint Method(约束方式)。
决定动态约束节点连接的类型,可从下拉菜单中选择,一共有3个选项,如下图(左)所示。
·Weld(焊接式):将连接点固定在一起,不可以伸缩。
·Spring(弹簧式):默认选择该连接方式,压缩或拉伸后该连接会恢复到初始状态。
·Rubber Band(橡皮筋式):与Spring(弹簧式)连接相似,拉伸后会回到初始状态,但对其进行压缩时,则无此效果。
02Constraint Relation(约束关系)。
决定约束对象如何彼此相互关联,以及如何与动态约束节点相关联。
.Object to Constraint(对象到约束):将约束对象的输入组件连接到动态约束节点位置上,默认选择该选项。
·Object to Object(对象到对象):将约束的对象与另一个约束连接起来,忽略动态约束的位置和变换。
03Component Relation(组件关联)。
一个决定组件节点,如nClothShape(n布料形状)节点、nParticleShape(n粒子形状)节点或nRigidShape(n刚体形状)节点,彼此之间的关联方式。组件是作为动态约束的一部分,每个部分均代表对象基本组成组件的一种集合(如一组三角形或一组点等)。
可从下拉菜单中选择关联的方式,如下图(右)所示。
·Allto First(全部至首项):将所有组件与动态约束的第一个组件关联,默认选择该选项。·All to All(全部至全部):将所有组件与动态约束的其他(除与对象组件相同的组件之外)所有组件相关联。
·Chain(链式关系):将组件成系列关联,每一个组件与下一个属于动态约束的组件相连接。
04Display Connections(显示连接)。
勾选该选项,在场景视图中将会显示所有动态约束的连接,默认勾选该选项。
05Connection Method(连接方式)。
决定动态约束连接的生成方式,可从下拉菜单中选择,如下图所示。
·Component Order(组件顺序):按照组件节点中基本组件的顺序生成组件连接。
·Within Max Distance(按最大距离):在起始帧上,最大距离(世界坐标系下)内的任何两个组件之间均生成连接。在该模式下组件之间将生成复合连接(多对多)。
·Nearest Pairs(最近对):在每个基本组件与最近组件之间生成连接。
06Max Distance(最大距离)。
当连接方式为Within Max Distance(按最大距离)方式时,该属性可用来确定基本组件连接的最大距离上限值,默认取值为0.1,有效的取值范围为0~1。
07Connection Update(连接更新)。
确定何时对动态约束的连接方式进行判断。
·At Start(自起始端):自模拟的起始端开始对连接方式进行判断。
·Per Frame(每一帧):对模拟的每一帧进行判断。
08Connect within Component(在组件内连接)。
当勾选该选项时,允许Maya粒子对象与组件进行连接。取消勾选该选项,则仅允许组件之间的连接,默认未勾选该选项。
09Connection Density(连接密度)。
基于Max Distance(最大距离)确定连接的集中程度。激活后可以对其进行调节,默认的取值为1.0。激活方法:将Connection Method(连接方式)设为Within Max Distance(按最大距离),当取值为1时,将保持连接;取值为0时,无连接。0到1之间的取值表示打断连接的概率。可使用Connection Density Range(连接密度范围)对该属性进行设置。
Connection Density Range(连接密度范围)Connection Density Range(连接密度范围)卷展栏如下图(左)所示,该卷展栏中的参数能够影响Connection Density(连接密度)的属性,并且仅当将Connection Method(连接方式)设置为Within Max Distance(按最大距离)时,才为可编辑状态。
使用连接密度范围设置可以对连接密度取值进行设定,使用输入数值或是图表编辑器的方式均可,后者较为直观。图表编辑器的用法在前面章节中已有介绍,在此不再详细介绍。
01Selected Position(选择位置)。
确定Connection Density(连接密度)的位置,有效的取值范围在0到1之间。
02Selected Value(选择值)。
确定Connection Density(连接密度)的大小,有效的取值范围在0到1之间。
03Interpolation(插值)。
包含线性插值等多种方式,可在下拉菜单中选择,如下图(右)所示,默认方式为线性插值。下拉菜单中的None(无)、Linear(线性)等插值方法,在前文中已做出介绍。
04Strength(强度)用来确定动态约束的总体强度。常用取值在0至200之间,默认的取值为20。
05Tangent Strength(切线强度)。
确定所在位置沿切线方向运动的阻力。有效的取值范围在0至无穷大之间,默认取值为10。
06Glue Strength(黏合强度)。
确定动态约束抵抗被打断的能力。与整体的场景或对象的规模有关。默认取值为1,有效取值在0到1之间。当值为1时,代表该约束是不可打断的。取值为0代表约束可即时被打断,相当于无约束。由于连接是在起始帧建立的,一旦连接被打断,则不可重建,除非黏合强度重设为1。
07Glue Strength Scale(黏合强度缩放)。
为整体场景范围确定黏合强度的灵敏度。在世界坐标下确定与连接间距相关的断开点的位置。
该属性可对所需间距的取值按一定比例进行缩放。默认取值为1。
8Bend(弯曲)。
勾选该选项时,可决定边对边的约束是否可被弯曲。默认未勾选该选项。
9Bend Strength(弯曲强度)。
用于设置边约束弯曲的阻力,默认取值为20。有效值在20~200之间。
10Bend Break Angle(弯折角)。
置边对边约束弯折的极限角度,默认取值为360。有效值在0~360之间。
11 Force(引/斥力)。
确定约束点之间的引力和斥力。默认取值为0,效果等同于不存在任何斥力或引力。对于组件之间的约束,引力或斥力基于衰减距离取值,随着距离的增大而递减。对于变换约束,引力/斥力作用于点和变换约束中心之间。除对象之外,该属性也可应用于nCloth(n布料)组件,因而与Maya中标准的场不同。有效取值在-10~10之间。
12Rest Length Method(静止长度方式)。
指定动态约束定义静止长度的方式。可根据需要从下拉菜单中选择合适的方式。
·From Start Distance(自起始距离开始)。
在起始帧设置约束距离。当静止长度设为1时,初始状态下对应的约束是不存在张力的。
·Constant(常量)。
将约束距离设为恒定值。
13Rest Length(静止长度)。
在世界坐标系中设置动态约束连接的静止长度。仅当Rest Length Method(静止长度方式)
14设置为Constant(常量)时,该属性才被激活。
Rest Length Scale(静止长度缩放)。
根据起始帧处所定义的长度来确定如何动态地缩放静止长度,默认取值为1。
15Motion Drag(运动拖曳)。
确定每个约束对象对其他对象运动的吸引力。取值为1时所有约束对象将被绑定在一起运动。
取值为0时,意味着约束对象不会一起运动,默认取值为0。
16Dropoff Distance(衰减距离)。
为世界坐标系下Strength Dropoff(强度衰减)的渐变范围所对应的距离值。
Strength Dropoff(强度衰减)
允许用户基于衰减距离控制连接的强度,其卷展栏如右图所示。
强度衰减曲线的图表编辑方式与连接密度曲线相似。
01Exclude Collsions(排斥碰撞)。
在勾选状态下,在当前约束的点、线或面中,仅对nCloth(n布料)约束碰撞进行运算。
02Damp(阻尼)。
确定与被约束的基本组件运动幅度的降低程度相对应的能量降低值。默认值为0,有效取值在0~1。
03Local Collide(局部碰撞)。
勾选状态下,允许在约束点处使曲面约束与局部曲面进行碰撞。比标准表面碰撞的运算速度快。
04Collide Width Scale(碰撞宽度缩放)。
当勾选Local Collide(局部碰撞)时,动态约束形态节点可定义约束点之间的碰撞,亦可增加或替换约束对象之间的碰撞。碰撞宽度缩放即约束对象整体碰撞层宽度值占碰撞对象宽度的比例。默认值为1,最大值也为1。该碰撞宽度是基于碰撞对象的宽度(对n布料)和半径(对n粒子)属性的。
05Friction(摩擦)。
决定了滑动约束运动的自由度。设为1时,面约束被锁定,无法移动。值为0时,面约束可随意滑动,不受限制。默认值为0,最小值为0。
06Single Sided(单面)。
勾选该选项时,使得可移动的面约束到约束曲面的一侧。该侧的面应在起始帧确定,贯穿于整个模拟过程中,可以避免约束面移动时产生翻转或被推向相反位置。例如,将布料约束于某开口的圆筒时可利用单面属性防止布料掉进圆筒,并可保持布料始终依附于圆筒外侧。
07Max lterations(最大迭代次数)。
确定动态约束每个模拟步骤中解算的最大次数。迭代次数为模拟步骤中运算的次数值。随着迭代次数增加,精度也随之增加,同时,运算时间也会增加。默认值为500。
08Min lterations(最小迭代次数)。
确定评估动态约束的最小解算次数迭代的值。迭代次数为模拟步骤中运算的次数值。当现有动态约束强度较低时,最小迭代次数可提高动态约束效果的迭代质量。最小迭代次数也会对其他粒子对象的属性如nCloth(n布料)对象拉伸阻抗产生影响。
热门课程
专业讲师指导 快速摆脱技能困惑相关文章
多种教程 总有一个适合自己专业问题咨询
你担心的问题,火星帮你解答学习游戏开发班可以帮助游戏爱好者从零基础成为游戏开发专家,掌握全面的游戏开发技能。
火星时代教育为您提供专业的界面设计实战班,在实践中掌握界面设计的核心技巧和最新趋势,成为优秀的UI设计师。
了解UI交互设计培训的最佳选择,比较不同培训机构的优势和特点。
火星时代教育为您推荐专业的学影视后期培训机构,提供高质量的培训内容及资深导师指导,助您成为优秀的影视后期剪辑师或合成师。
火星时代教育是一家专注于交互设计培训的机构,为学员提供专业的交互设计培训课程,并帮助他们成为优秀的交互设计师。
本文章将介绍关于UE5智慧城市专业学习的重要性和火星时代教育的资讯。
1. 打开微信扫一扫,扫描左侧二维码
2. 添加老师微信,马上领取免费课程资源
同学您好!