MAYA材质系统的Utilities工具简介(二)

http://tech.ddvip.com   2007年08月09日    社区交流

内容摘要:MAYA材质系统的Utilities工具简介

  下面用一些小例子来感受一下vectorProduct节点的作用:

  Dot Product操作:

  建立一个球体并指定Blinn材质。

  创建一个directionalLight并将其Light Direction连接到vectorProduct节点的Input1;

  建立一个SampleInfo节点并将其Normal Camera连接到vectorProduct节点的Input2;

  vectorProduct节点的操作方式为Dot Product

  将vectorProduct节点的Output值任意一个连接到Blinn.ColorR上。

  结果如图:

  现在球体红色的部分对应Blinn.ColorR的值就为Dot Product操作后产生的值,我这里的ColorR=0.660。如果将vectorProduct节点的OutputX、OutputY、OutputZ分别连接到Blinn.ColorR、Blinn.ColorG、Blinn.ColorZ上。那么由于OutputX、OutputY、OutputZ的值是相等的,都是0.660。所以Blinn.ColorR、Blinn.ColorG、Blinn.ColorZ都等于0.660。

  MAYA材质系统的Utilities工具简介(二)

  03Cross Product操作:

  建立一个球体并指定Blinn材质;

  建立一个SampleInfo节点;

  建立一个Set Range节点。

  将SampleInfo节点的Ray Direction连接到vectorProduct节点的Input1;

  提取出物体表面光线方向的信息。

  将SampleInfo节点的Normal Camera连接到vectorProduct节点的Input2;

  提取出物体表面法线信息。

  将vectorProduct节点的Output连接到Set Range节点的Value;

  将Set Range节点的outValue连接到Blinn.Color。

  设置操作方式为Cross Product

  打开vectorProduct节点的Normalize Output,

  这样vectorProduct节点的Output值的范围在-1到1之间。

  因为颜色没有负值,所有用Set Range节点来将vectorProduct节点的Output值限制在0——1之间。

  Set Range节点的值按如下设置:

  我们所要得到的是:

  Min=0;Max=1

  vectorProduct节点的Output值范围是:

  OldMin=-1,OldMax=1

  渲染场景。

  另:如果不是很清楚的话不要紧,先感觉一下这些操作所起的作用,慢慢做得多了,就理解了。有时间的话,我再做一些实用的例子,

  就象前面的卡通材质一样。

  MAYA材质系统的Utilities工具简介(二)

责编:豆豆技术应用

正在加载评论...