咨询电话:400-810-1418服务与监督电话:400-006-6572

在maya中制作机枪打墙的特效(四)之火花、碎渣制作

发布时间:2019-10-10 17:44:49

3.火花

接下来我们制作子弹打到墙体喷溅出来的火花,本案例主要应用粒子的Particle Collision Event Editor (粒子碰撞事件编辑器),让“ball” 粒子碰撞的时候再产生一套新的粒子,用于火花的制作。

(1)执行菜单Particles > Particle Collision Event Editor (粒子>粒子碰撞事件编辑器)命令打开粒子碰撞事件编辑器,单击New Event (新事件)按钮,这样就可以创建新的碰撞事件了,具体设置如图所示。

 在maya中制作机枪打墙的特效(四)之火花、碎渣制作

(2)设置完成后,单击Creat Event (创建事件)按钮创建新的事件,这时候便产生了名为“particle1”的新粒子,将其改名为"fire" 。

(3)为了火花的效果更加逼真,选择"fire"粒了,并且将粒了的形态改为Streak (条纹)方式,设置粒子寿命为Constant (恒定)方式,Lifespan (生命值)设置为0.1秒,如图所示。

 在maya中制作机枪打墙的特效(四)之火花、碎渣制作

(4)为“fire" 粒子赋予一个和“ball" 粒子相同的材质,渲染效果如图所示。

 在maya中制作机枪打墙的特效(四)之火花、碎渣制作

4.碎渣

接下来继续制作子弹打到墙上的碎块效果,这次依然使用粒子事件,为“all”" 创建新的碰撞事件。

(1)执行Partcles > Particle ollision Event Editor (粒子>粒子碰撞事件编辑器)菜单命令,单击New Event (创建事件)按钮,具体设置如图所示。

 在maya中制作机枪打墙的特效(四)之火花、碎渣制作

(2)把新创建出来的粒子改名为“shatter” ,并且为它添加一个Gravity (重力)场,如图所示。

 在maya中制作机枪打墙的特效(四)之火花、碎渣制作

粒子的动态解决后,我们开始制作粒子的形状,本案例主要应用Instancer (粒子代替)技术。

(3)首先制作3到4个形状各异的小石头模型,用来模拟墙上的碎块,并且为模型创建一个lambert材质,添加一张 与墙体颜色相近的贴图,如图所示。

 在maya中制作机枪打墙的特效(四)之火花、碎渣制作

Tips:案例中我们应用了菜单Effects>Create Shatter (效果>创建破碎)命令,具体设置如图所示,另外制作出的模型一定要在世界原点位置。 执行菜单Modity>Freeze Transformations (修改>冻结变换)命令,这样可以防止代替模型的偏移。

 在maya中制作机枪打墙的特效(四)之火花、碎渣制作

(4)依次选择碎裂的模型,最后加选粒子,执行菜单Particles > Instancer (Replacement) (粒子>实例化(替代) )命令,这样“shatter” 粒子就全部成为模型碎块了。

播放动画,发现粒子的动画很诡异,模型大小和形状都一样了,接下来进入表达式的控制。

(5)先解决形状-样的问题,在大纲视图中选择instance2节点,按下Ctrl+a键打开它的属生编辑器,可以看到我们刚才替代的模型列表,如图所示。

 在maya中制作机枪打墙的特效(四)之火花、碎渣制作

原因很简单,粒子替代默认情况下只会替代0号物体,所以我们就看到了模型形状都一样的现象。

(6)选择“shatter” 粒子,按下Ctrl+a键打开粒子的属性编辑器,在Add Dynamic Attributes(添加动力学属性)卷展栏下单击General (常规)按钮,在打开的窗口中进行设置,为粒子添加3个属性。

●Rand_ index

此属性将负责控制模型的随机代替,解决模型的代替问题,数据类型为float (浮点)。

●Rand_ scale

此属性将负表控制模型的随机缩放,解决模型的大小问题,数据类型为vector (矢量)。

●Rand_ rotate

此属性将负责控制模型的随机旋转,解决模型的方向问题,数据类型为vector (矢量)。

(7)使用鼠标右键单击任意新属性后面的空白处,在弹出的菜单中选择Creation Experssion(创建时表达式)命令,添加如下命令。

//随机0到5的模型序列

shatterShape.rand jindex = rand(0,5);

//随机0.3到0.5的模型缩放

shatterShape.rand scale = rand(0.3,0.8);

//随机0到360的模型旋转

shatterShape.rand_ rotate = rand(0,360);

(8)编辑完表达式后,单击Create (创建)按钮完成表达式的创建。同上,在属性编辑器中找到Instancer (Geometry Replacement) (实例化器 (几何体替代) )卷展栏,在Object Index (对象索引)属性的下拉菜单中选择自定义的Rand. index.属性,与之做关联;在Scale (缩放)属性的下拉菜单中选择Rand, scale属性,与之做关联;在Rotation (旋转)属性的下拉菜单中选择Rand. index属性,与之做关联,这样代替模型的形状就符合要求了,参数如图所示。

 在maya中制作机枪打墙的特效(四)之火花、碎渣制作

渲染效果如图所示。

在maya中制作机枪打墙的特效(四)之火花、碎渣制作