• 1. 双眼 view 你的project;
    2.导入双眼素材,exr或者是join view;
    3. 结算视差场(ocula) O_slover+O_DisparityGenerator (这一步就得到了后面要用到的Disparity)
    4.nuke 6 里释放 单独版Bezier 

    5.在节点树里接入 Bezier  ,并在其中一个view里画上你的roto,这里在 left里画;
    6.选中Bezier节点下 shape 的view mune 然后选择 correlate right form left with disparity  使用前面结算出来的视差场(disparity)



    你会发现你之前画的roto 在双眼里都对位roto好了



    节点树:

                         left view    right view
                             \               /
                              \             /
                              joinviews
                                    |
                                    |
                                o_slover
                                    |
                                    |
                       O_DisparityGenerator
                                   |
                               Bezier1
                                   |
                               viewer1


  •  
    预乘(Premultiplication)
     
    定义:一个图像用它自己的RGB通道乘以它自己的ALPHA通道
     
    典型地,一个从3D软件里得到的图像是预乘的,意为透明区域在RGB区域和ALPHA通道区域都有黑色。一般是指TGA和TIF序列。:)
     
    忽略预乘可能产生的问题:黑边,就是我们在合成时常见到的黑边。尤其是你在3D软件渲染的图里带有半透明的区域。

     

     

    当然容易产生黑边的是各种云,烟,光效等。
      
    AE的,在TGA序列导入时会出现如图的选项,选择第三项,OK

     

    DF的,注意在DF里要选择MERGE节点,将ADDITIVE数值调整为1,DF4里缺省为1。
    ADD模式和模式都会改变你图像的颜色的,合成软件都解决了这个预乘问题的。要不,这个软件可就没有竞争力呀。

     

     

  • 在渲染硬件粒子时,如果选择的渲染分辨率比较大。在硬件渲染器中的Render Buffer scale 下的100%是灰的。不能被选择。渲染出的素材不是自己想要的完整大小。
    解决方法:
    1.在maya安装目录maya/scripts/others下找到glRenderWin.mel
    使用记事本或写字本打开。使用搜索文字。搜索 isSizeOkayRW ,修改其中的两行
    // 

    ========== isSizeOkayRW ==========
    //
    //  Description:
    //        Check if the given viewport dimensions make the
    //        window to big to fit on the screen.
    //

    proc int  isSizeOkayRW( int $width, int $height, float $scale )
    {
        int        $w = $scale * $width;
        int        $h = $scale * $height;

       if (($w < 100) || ($w > 1100) || ($h < 100) || ($h > 825))
           return 0;
        return 1;
    }

    2.修改其中的

    proc int  isSizeOkayRW( int $width, int $height, float $scale )
    {
        int        $w = $scale * $width;
        int        $h = $scale * $height;

    //  if (($w < 100) || ($w > 1100) || ($h < 100) || ($h > 825))
    //       return 0;
        return 1;

    3.重启maya。
    现在就可以以100%分辨率渲染大尺寸的硬件粒子了
    慢慢享受吧~~~
  • tor 是所要得到数值的向量。
    Mag 函数使用下列公式把向量转换为一个浮点数。
       例如:
    mag(<<7,8,9>>
       返回值 13.928 。

    rot
       返回一个向量,它代表以指定轴旋转一定弧度后点的位置。
    vector rot(vector point, vector axis, float angle)
    point 是在世界坐标系中点的位置。
    Axis 是点围绕之旋转的轴。这个轴是一条经过原点的有指定方向的线。
    angle 是点所旋转的弧度。
       例如:
    rot(<<3,3,0>>,<<1,0,0>>,0.5)
       返回值为 <<3, 2.633, 1.438>> 。这是一个向量,它是沿 <<1,0,0>> 的轴旋转 0.5 弧度后点的位置在 <<3,3,0>>
       的向量。
       例如:
    particleShape1.position = rot(position,<<0,1,0>>,0.1);
       假定在场景中有一个单粒子物体,它的位置是 <<4,6,0>> ,并为它的粒子形节点写了上面的 runtime 表达
       式。播放动画时,粒子将沿 Y 轴旋转成一个圆形图案。
       在每帧中,粒子旋转 0.1 弧度,约为 5.7 度,

    unit
       返回一个和向量相应的 unit 向量。
    unit 向量具有和指定向量相同的方向,但是它的数量是 1 。
    vector unit(vector vector)
    vector 是和 unit 向量相应的向量,
       例如:
    unit(<<1,1,1>>
       返回 <<0.577, 0.577, 0.577>> 。

  • http://www.crescentvideo.co.jp/3delight/maya/tutorial/01.shtml

     

    http://www.crescentvideo.co.jp/3delight/news/20070209.shtml

     

    http://www.crescentvideo.co.jp/3delight/release_note/