当我们制作动力学流体时,在流体容器内会有一个力场存在,并且控制流体的运动。我们可以选择流体容器,按下Ctrl+a键打开属性编辑器,找到Display (显示)卷展栏,勾选Velocity Draw (速度绘制)就可以清楚地查看到力场的运动了,其中箭头的方向表示力场的方向,箭头的长度越长表示力场作用力越大,如图所示。
步骤1:使用流体力场推动模型运动
(1)执行Fluid Effects>Create 3D Container with Emitter (流体效果>创建具有发射器的3D容器)命令,创建一个带有发射器的流体容器。播放动画可以看到流体的运动,这也说明有力场正在驱动着流体,如图所示。
(2)选择流体容器,按下Ctrl+a 键打开属性编辑,找到Display (显示)卷展栏,勾选Velocity Draw (速度绘制),使力场可以观察,并且执行Create > Polygon Primitives > Sphere (创建>多边形基本体>球体)菜单命令,创建一个Mesh类型的球体,如图所示。播放动画可以看到黄色的速度线,但是并没有影响到刚刚创建出来的模型。
(3)将流体产生的力场与模型进行关联。执行Window > Relationship Editors> Dynamic Relationships (窗口>关系编辑器>动力学关系)菜单命令,打开动力学关系编辑器,在左边的列表选择“pSphere1”物体,右边的列表选择“fluidShape1”,这样就将模型与力场关联到了一起,如图所示。
(4)再次播放动画,可以观察到流体对模型产生了推动力,如图所示。
Tips:在Maya系统中,任何力场都只能控制动力学相关的物区,如粒子。布料。流体。刚体、豪体等。本天保模型并不算动力学物体。原本不会参加动力学演算,而Maya在后台将模型转化成刚体。所以模型就可以被力场驱动了。可以进入Outiner (大纲柳图)。勾选Dlsplay>Shepes (显示>形状)命令。即可看到模型的四体节点。
步骤2:使用流体力场推动一套粒子运动
(1)执行Fluid Effects> Create 3D Container with Emitter (流体效果>创建具有发射器的3D容器)菜单命令,创建一个带发射器的流体。
(2)执行Particles >Create Emitter (粒子>创建发射器)菜单命令,创建一套粒子。
(3)选择流体发射器,按FCtrl+a键打开发射器属性面板,在Basic Emitter Atributes (基础发射器属性)卷展栏下将Emitter Type (发射器类型)修改为Volume (体积),如图所示。
(4)在Fluid Atributes (流体属性)卷展栏下将Density Method (密度方法)、Heat Method(热量方法) 、Fuel Method (燃料方法)全部调成No Emisson (无发射) ,如图所示。
(5)打开Emission Speed Atributes (发射速度属性)卷展栏,将Speed Method (速度方法)修改为Replace (替换)并将Along Axis (沿轴)调节为1.这样流体发射器将在容器范围内发射一个方向力场,如图所示。
(6)选择流体容器,按下Ctr1+a键打开属性面板,勾选Display (显示)卷展栏下的Velocity Draw(速度绘制)选项,Velocity Draw Skip (速度绘制跪过)属性可以控制速度线的数量,Draw Length(绘制长度)可以控制速度线的长短,如图5.068所示, 显示了当前流体的力场方向与大小。
(7)执行Window> Relationship Editors> Dynamic Relationships (窗口>关系编辑器>动力学关系)菜单命令,打开动力学关系编辑器,在左边的列表中选择"particle1" 粒子,右边的列表选择fluidShape1" ,如图所示, 将粒子与流体发射的力场关联起来。
(8)将粒子发射器的发射方式修改为Volume (体积)发射,播放动画,就可以看到粒子已经被流体的力场控制,如图所示, 但是可以看到粒子的运动过于激烈,甚至瞬间就超出了容器的范围。
(9)选择粒子,按FCtrl+ a键打开属性面板,在General Control Atibutes (常规控制属性)卷展栏下找到Conserve (保持)属性,将其调节为0,再次播放动画查看效果,如图所示, 流体的力场完全控制了粒子的运动。
Tips:我们还可以创建一个与流体容器的边界一样大小的方盒模型,让模型与粒子产生碰撞,这样即使Conserve (惯性)属性为1。粒子也会因为碰撞的存在而不会超出流体容器的边界了。
步骤3:使用一个流体力场推动一块布料运动
(1)执行Fluid Efects>Create 3D Container with Emitter (流体效果>创建月有发时器的3D容器)命令,创建一个带发射器的流体。
(2)创建一个平面模型,增加一些分段数。切换到nDynamics模块,执行nMesh>Create nCloth(nMesh>创建nCloth)菜单命令,把模型变成布料系统,如图所示。
(3)执行Window> Relationship Editors> Dynamic Relationships (窗口>关系编辑器>动力学关系)菜单命令,打开动力学关系编辑器,在左边的列表中选择“nCloth" 节点,右边的列表选择“fuidShape1",如图所示, 将布料与流体发射的力场关联起来。
(4)此时播放动画布料时发现并没有飘动效果,这是因为布料系统自身存在一个重力。选择平面模型,按下Ctrl+a键打开 属性面板,找到nucleus1布料解算标签,将Gravity (重力)设为0, 这样可以关闭布料自带的重力,如图所示。
(5)再次播放动画,布料就可以随着流体力场的方向运动了,如图所示。
下一篇 使用maya制作熔岩流动效果教程
热门课程
专业讲师指导 快速摆脱技能困惑相关文章
多种教程 总有一个适合自己专业问题咨询
你担心的问题,火星帮你解答《黑神话:悟空》作为一款现象级中国游戏,其成功离不开多种先进计算机技术的支持。本文将深入解析该游戏背后的关键技术,包括虚幻引擎......
在游戏开发领域,Unity和Unreal Engine(虚幻引擎)都是备受推崇的游戏引擎,但它们各自拥有不同的特点和优势。
春节之后大量抢人!这6个行业是转行首选,进去1年顶3年!火星毕业就能进
春节后求职,哪些行业进去能立马涨薪?打破信息差很关键!
还没毕业,就去帮电视台拍活动,作品被主任说“非常好”!猜猜是哪个专业呀?
回想过去,电子游戏里的草其实并不是真正的草。开发者们只是简单地把草的纹理直接贴在游戏关卡的地板上
在火星的就业指导老师那里,经常收到同学们这样、那样的提问。其中有一些共性问题,就业老师会根据自己丰富的经验,为同学们给出合适的回答。