当前位置: 主页 > 平面设计 > Maya渲染教程 郑和下西洋特效篇

Maya渲染教程 郑和下西洋特效篇

  • 2022-02-06
  • 来源/作者: PS.ONEGREEN.ORG    / 佚名    
  • 3 次浏览

  本教程讲解的是郑和下西洋特效制作,作者详细的介绍了其渲染过程

  我们首先看一下效果图。

  Maya渲染教程 郑和下西洋特效篇

  1、本片的特效部分主要集中在海洋的表现上,尤其是几场暴风雨镜头确实具有挑战性。实现真实可信的CG海洋并非易事,但是Maya为我们提供了一套非常科学、方便的流体系统,尽管网上对三维软件的谁优谁劣争论不朽,但是我认为至少在海洋特效上MAYA拥有其它软件无法比拟的视觉的效果。好,现在我们一起走进MAYA强大的流体世界吧。

  先切换到动力学海洋模块流体特效。

  Maya渲染教程 郑和下西洋特效篇

  好了,我们已经创建了一个海洋并且同时系统自动为我们创建了一个oceanShader。

  Maya渲染教程 郑和下西洋特效篇

  我们可以把海面想成是一个非常大NURBS物体,而预览平面可以方便直观的对自己的调节做预览。而oceanShader不仅提供了一般材质的表面属性调节,还提供了对海洋动画的调节,确切的说它更象是一个动画材质。下面我具体介绍一下oceanShader的几个比较重要的参数。

  Maya渲染教程 郑和下西洋特效篇

  下面看看它们的具体应用。

 

 Maya渲染教程 郑和下西洋特效篇

[NextPage]

  波速没有什么好说的速度越快湍流越急。

  Maya渲染教程 郑和下西洋特效篇

  如图。

  Maya渲染教程 郑和下西洋特效篇

  Wave Height。

  Maya渲染教程 郑和下西洋特效篇

  Wave Tubulence。

  Maya渲染教程 郑和下西洋特效篇

  wave peaking。

  Maya渲染教程 郑和下西洋特效篇

  好,有了上面的基础我们来制作一段暴风雨镜头。首先生成一个海面,摆一个比较舒服的机位。

  Maya渲染教程 郑和下西洋特效篇

  细心调解oceanShader,在这里我给出我的调节参数仅供大家做参考。

  Maya渲染教程 郑和下西洋特效篇

  然后就是制作波涛汹涌的波浪,这里我们用到了粒子系统,众所周知MAYA的粒子系统是十分强大的,下面看看我们是如何实现的。首先我们先做一个NUBRSplane这个物体将作为粒子的发射面。

[NextPage]

  Maya渲染教程 郑和下西洋特效篇

  选择从物体发射粒子。

  Maya渲染教程 郑和下西洋特效篇

  对单位时间粒子的发射数量,和粒子的发射速度进行调节。

  Maya渲染教程 郑和下西洋特效篇

  对单位时间粒子的发射数量,和粒子的发射速度进行调节。

  Maya渲染教程 郑和下西洋特效篇

  粒子出现了,但是位置好象不对,浪花应该出现在浪尖上才对,那么这里我们需要用表达式对粒子的位置进行控制。

  Maya渲染教程 郑和下西洋特效篇

  //creation expression floats partcles
  vector $ppos = spray_particleShape.position;
  float $pu = $ppos.x;
  float $pv = $ppos.z;
  float $samp[] = `colorAtPoint -o RGBA -u $pu -v $pv oceanShader1`;
  float $py = $samp[3];
  //set initial particle pos
ition on ocean surface
  spray_particleShape.position = <<$pu, $py, $pv>>;

  我们还要对粒子的寿命进行控制

  Maya渲染教程 郑和下西洋特效篇

[NextPage]

  spray_particleShape.lifespanPP = rand(0.5, 2);

  对粒子的速度进行控制。

  Maya渲染教程 郑和下西洋特效篇

  //runtime expression for ocean spray
  //check wave surface height
  vector $ppos = spray_particleShape.position;
  float $pu = $ppos.x;
  float $pv = $ppos.z;
  float $samp[] = `colorAtPoint -o A -u $pu -v $pv oceanShader1`;
  float $py = $samp[0];
  //clamp lower particle altitude to wave height
  if($ppos.y <= $py) {
  spray_particleShape.position = <<$pu, $py, $pv>>;
  }
  //drive particle down when it'
s too high
  else if($ppos.y > $py + ocean_emitterPlane.sprayHeight) {
  vector $pvel = spray_particleShape.velocity;
  spray_particleShape.velocity = <<$pvel.x, $pvel.y - ocean_emitterPlane.sprayPull, $pvel.z>>;
  };

  注意这里

  Maya渲染教程 郑和下西洋特效篇

  加入重力场、空气场、扰乱场,使粒子变的运动更加真实。

  Maya渲染教程 郑和下西洋特效篇

  开启硬件渲染预览一下效果,呵呵,马上要成功了。

  Maya渲染教程 郑和下西洋特效篇

  渲染粒子是在maya的硬件渲染器下进行的,最后在后期软件里把粒子和海洋进行合成。

  Maya渲染教程 郑和下西洋特效篇

  效果如图。

  Maya渲染教程 郑和下西洋特效篇

 << 上一页  [11] [12] [13] 下一页