3Delight formaya
2011-12-2200:00:27|分类: maya,CG |标签: |字号大中小订阅
3Delightfor maya是一个完全交互的maya插件,它允许用户使用强大的3Delight渲染图像.这个插件不仅高效而且简洁易用,它基于标准的renderman流程内核。所有的3delight的功能都列举在3delightfor maya的技术手册里面。
surfaceshade:
1/
surface simplekoko(
color colorbase=color(1,1,1);
)
{
normal Nn =normalize(N);
vector Vn =normalize(-I);
Ci=colorbase*Nn.Vn;
Oi=color(1,1,1);
}
2/
surface shaderkoko( color diffcolor = 1;
floatkd= 0.8;
floatKs= 1;
float roughness = 0.1;
)
{
normal Nn =normalize(N);
vector Vn =normalize(-I);
Ci = kd*diffcolor *diffuse(Nn)+ Ks*specular (Nn,Vn,roughness);
Oi = color(1,1,1);
}
Lightshader:
light pointlightkoko(
float intensity = 1;
color lightcolor = (1,1,1);
)
{
point pos = point " shader" (0,0,0);
illuminate (pos)
{
CI= intensity *lightcolor;
}
}
3Delight formaya官方视频教程
3Delight可以渲染的物体:
多边形物体,曲线,曲面物体,粒子,毛发hair &fur,细分曲面物体,painterEffect曲线和物体等。
加载3Delight for maya插件:
下面就是3Delight的面板和全局设置:
(1)render:默认没有参数,需要在add render pass。
(2)select Render Pass:选择renderpass,当创建了renderpass的时候,通过此命令来选择。
(3)Duplicate Render Pass:复制renderpass,当创建了renderpass的时候,通过此命令来复制。
(4)Save Render Pass as Template:复制Renderpass作为模板,通过此命令可以保存渲染设置。
(5)Add Render Pass:增加渲染通道。
(6)Add RIB archive:增加RIB格式输出。
(7)Add Clippling Plane:增加剪切平面。
(8)Add Coordinate System:增加坐标系统。
(9)Add CSG node:增加CSG节点,用来类似布尔物体。
(10)Assignment Panel:指定面板,将3Delight的材质球赋予给物体和场景。首先,选择物体,在surface中点击棋盘格,创建一个surfaceshader,如有图。这是3Delight 的材质球。有surface shader,DIsplacementshader,和Attribs。
(11)3Delight RelationshipEditor:3delight的关系编辑器,主要通过它,来完成材质或者属性的指定设置。
(12)preferences:首选项。
(13)Deprecated Editor:包括:属性节点编辑器和材质节点编辑器。
首先介绍一下属性节点编辑器(Attribs Node Maganger):
3Delight formaya就是使用属性编辑器来管理每一个物体的可变参数的控制的。例如要想给一个或者多个物体添加一些属性,就要通过设置Create一个指定类型的属性,然后添加属性,之后设置参数。下面有一个Poly to subdiv实例介绍这个功能。
再次,介绍一下材质编辑器(shader manager):
这里提供了3Delight的材质,包括表面材质,置换材质,环境材质,灯光材质等。其实对于真正使用3delight还是自己编写材质,通过SLcode。
(14)Help:帮助文档。我翻译了一些帮助文档,但是还没有翻译完成。是这样由于本人感觉帮助文档其实没有什么作用,因为学习一个软件最主要的还是因该了解其内核,原理。比如3Delight的光线追踪的原理是基于什么的,还有渲染Pass的运算方式等等。如果大家觉得想看帮助文档完整版的话,我看看有时间就翻译完,我现在征求一下大家的意见(翻译的一部分我将放在本文档的最下面,大家可以先看一下)。
Render setting:
1.selected Render Pass:默认这里并没有full RenderPass,首先点击棋盘格创建一个renderpass。可以创建很多render pass。
Camera:这里的Camera就是渲染使用的相机,其设置的分辨率等参数继承了Common栏的相机设置。如果用户想要更改,请打断连接,修改即可。
勾选Animation即可渲染动画。
2.Output输出栏:
Render mode(渲染模式):render,即开启正常渲染。
Save RIB (保存RIB):单个模型保存RIB格式,方便以后渲染调用。RIB archive:输出RIBarchive,渲染时,优化大场景 。
3.Quality:质量。
Pixel sample:像素采样:值越大渲染抗锯齿越明显,但是渲染速度越慢。
shadingRate:值越小,shading效果越清晰越好,但一般不要低于0.1,其实对于很多场景1已经足够,renderman默认是5,而3Delight默认是1。
Pixel Filter:滤镜,包括box,triangle,Gaussian等,不同的过滤方式有不同的算法。
Raytrace Max Depth:光线追踪深度,这个参数大家不陌生。
4.Motion Blur:运动模糊控制。
3Delight for maya 支持三种运动模糊:
Camera Blur:基于相机运动的运动模糊。
Transformation Blur:基于位移的运动模糊。
Deformation Blur:基于变形的运动模糊。
Motion BlurPosition:开始帧,中间帧还是帧结束。三种不同的位置,就有三种不同的结果,默认中间帧(比如,第N帧为例,运算就是在第N-1的半帧和第N+1的半帧产生模糊)。
5.diaplay栏:
这里控制输出图像的。
可以选择输出的pass,图像格式,位深度等等。
6.Shadow Maps:阴影贴图。
首先,勾选渲染阴影贴图。深度贴图计算原理是基于物体与相机的距离而render一张黑白的深度图,它不像光线追踪阴影那么真实,它本身就不是真实的shadow。
7.GI:全局照明。
renderman的全局照明基于点云的,而不像mentalray基于光线追踪射线发射半球采样点。但是无论是renderman还是mentalray本身来讲,计算GI都是很消耗时间的。
点击:GI_Environment Shape来创建一个基于HDRI图像照明的环境球(IBL)。
Effect:Occlusion和colorBleeding。
OCC默认设置,一般使用这个。
colorBleeding:色溢,模拟一种假的全局照明的色彩溢出效果。例如,一个红色的球放到一个灰色的平面上,渲染时,红色会将灰色平面染色,灰色平面也会有红色倾向。
sample:采样,值越高,GI效果越平滑,但是渲染时间越长。
7.Render Sets:渲染集。
这是3Delight渲染默认集。
8.Advanced:高级设置
这主要设置render过采样的像素快大小,渲染优化,渲染检测,纹理尺寸和内存需求。
RIB 下面将有一个实例讲解。
Statistics:渲染输出一个statistics文件,方便查看渲染内容和出了什么问题。
3Delight for maya的特征:
Poly to subdiv(将多边形物体渲染时,转化成细分曲面物体,这样就不用使用增加面的细分来渲染光滑的曲面了 ):
1/打开文件。
2/
原理:当要把一个多边形转化成细分曲面的时候,3Delight 就首相将其转化成N布料节点。
create:
selection:
点击Add/Remove Attributes:勾选Poly AS subd。
RenderImage:
同样的方法添加Displacement(置换):首先,赋予狗的模型这个带有置换的材质。
RenderImages:Displacement Bound = 1.
RIB archive:实例
1.打开场景:
1/Add Render pass
这里我选择Basic,之后改名为OUT_RIB ,因为我们首先要输出一个Rib格式的文件,之后再读取进来。
2/设置RIB
在Render Mode里选择RIB archive。
在RIB filename里填写输出路径和名字和格式后缀名。
3/设置一个set,render RIB。
选择teatop,创建一个 set,命名为Teatop_renderRIB。set是renderman或者3Delight常用的命令,因为通过set,3Delight实现对单个物体或者多个物体的局部设置,比如shadowSet,lightlinkingSet等。
点击Render,渲染输出了一个teapot_archive.rib文件。
大家千万不要忘记:将下面的render sets栏的 objects torender设置为名为Teatop_renderRIB的set,这样渲染输出的文件就只是teatop设置的东西,否则就会出现全部的物体。
4/Add RIB:读入RIB archive。
在RIB filename选择刚才输出到桌面的teapot_archive.rib文件,读入即可。
Render即可:渲染如下图(复制了三个一共四个)
Render Pass:实例
怎样渲染输出多通道序列帧:
1/在Rendersetting里面。Dispalys栏里面,添加Add Display。选择需要渲染的通道。
2/在这里面填写输出路径和文件名还有序列帧格式。
3/右击这里,选择要渲染输出的通道,类似于Render man的Pass。
4/点击batch render即可,也可以点击渲染。
下面是我渲染输出的几个通道:
翻译 3Delight for maya帮助文档,To becontined!
2.简介
3Delight formaya是一个完全交互的maya插件,它允许用户使用强大的3Delight渲染图像.这个插件不仅高效而且简洁易用,它基于标准的renderman流程内核。所有的3delight的功能都列举在3delightfor maya的技术手册里面。
迅速开始:
想要渲染一个场景,你需要:
1。加载插件(使用插件管理器)。
2. 在全局渲染设置面板中使用3delight。
3。开始渲染,ok。
主要特征和要素
作为载体,3delight for maya提供以下特征和要素:
分通道渲染:一个渲染通道包括用来定义需要渲染的物体和灯光,渲染质量和输出类型的选项。渲染通道可以通过简便的添加到maya渲染层的最上面一层。
材质网络转换:3delight能够自动将maya的材质转换成renderman的能够识别的材质,因此,maya的场景可以完全使用3delight渲染。
Rendermam材质节点:它可以很方便的指定renderman的材质给场景元素,指定材质通过指定材质编辑器完成,而且还可以使用maya的属性编辑器调节renderman材质的属性。renderman的材质就自动覆盖材质编辑器的材质。
几何体属性节点:这些节点用来设置3delight可优化的变量,如光线追踪属性和运动模糊属性。
灯光属性节点:3delight完全支持maya灯光参数,同时它提供它自己的优化属性。例如,阴影贴图的类型(正常的和深度的)需要渲染通过3delight的灯光属性节点。
材质节点编辑器(The AssignmentPanel):这个可控的对话框用来预览和修改材质节点,属性节点和将材质球赋予给物体。
RIB Archives:3delight for maya可以创建和读取RIBarchives。当渲染复杂场景的时候尤其需要这个可控的特征。(koko注释:当3delight渲染物体时,MTOR会将场景转化为renderman支持的格式RIB:RendermanInterface Bytestream)。
Renderman内核节点:这个高级的材质节点允许SL (koko注释:SL就是shaderLanguage,这是renderman的材质语言,通过SL让用户编写自己的材质球)在材质网络中交互插入。
3 界面
3.1 3Delight 关系编辑器
The 3Delight Relationship Editor 是3Delight formaya主要的界面组成部分,使用它用户可以将3DFM的材质和属性连接到maya场景元素上。The 3DelightRelationshipEditor的工作方式和用户感受上都会觉得它和maya的材质编辑器很像。这样方便用户理解变量的操作模式。这个编辑器形状像maya的灯光连接编辑器,因为他有两个操作模块:以物体和属性为中心部分和以材质为中心的部分。每一个操作模块处理特殊的任务。例如,想要指定一个属性给物体,用户可以在属性中心模块中做以下的步骤:
1/左击: 在左边的面板中左击选择它。
2/左击: 在右边的面板中左击选择并连接上。
完成同样的操作在物体中心模块:
1/在左边的面板中选择物体通过按住shift 左击鼠标。
2/指定属性通过在右边面板中左击。
规则,属性和材质中心模式是比较好的适合在3DFM节点操作平台,而不需要冒险警告分配任务。可能的操作包括:渲染,显示节点在属性编辑器中,重命名等等。
一般来说,这个编辑器以下面的方法显示连接:
属性和材质中心模式:
如果左边面板中的一个属性被选择,那么编辑器右边面板就会高亮显示与其连接的物体。同样道理,适用于选择多个属性。
物体中心模式:如果在左边面板中选择一个物体,那么在右边面板中将会高亮显示与其连接的所有的属性和材质,包括直接指定给物体的材质和通过这些物体继承的材质和属性。
3.1.1 所有可执行的操作。选择器列举所有可执行的操作在每个面板中。更高级的三面板模式将在后面介绍到。
Mouse Action(鼠标动作)Description(描述)
1.在节点名字上双击重命名节点
2.在节点图标上双节在属性编辑器中能够显示节点
3. 在面板空白区域 左击清楚选择的高亮节点,不影响当前的maya选择
物体面板操作:注释3.3:通过显示菜单列举所有可执行的动作。注释3.4通过编辑菜单列举所有可执行的动作。
Check List Item (检查列举项)Description(描述)
几何体显示maya几何体节点
灯光显示maya灯光
相机显示maya相机
集显示maya集
Menu Item(菜单项) Description(描述)
1/高亮显示被选择的物体通过在maya中选择物体就会代替这个面板中高亮选择的物体
2/选择高亮的物体这将会替换maya中的当前选择的物体
3Delight render cmd:
Usage: render [options] filename
where "filename" is a Maya ASCII or a Maya binary file.
Common options:
-helpPrint help
-testPrint Mel commands but do not execute them
-verbPrint Mel commands before they are executed
-keepMelKeep the temporary Mel file
-listRenderersList all available renderers
-rendererstring Use this specificrenderer
-rstringSame as -renderer
-projstringUse this Maya project to load the file
-logstringSave output into the given file
Specific options for renderer "3delight": 3Delight renderer
General options
-3dfmshaveboolLoad or unload 3dfmShave plugin.
Render Pass selection flags - specify this option FIRST:
-rpstringRender Pass Node to render
Render Pass Camera flags:
-camstringSpecify which camera to be rendered
-xintSet X resolution of the final image
-yintSet Y resolution of the final image
-resmintResolution multiplier; 0 = Full, 1 = Half, 2 = Quarter, 3
= Eighth
-parfloatSet the pixel aspect ratio of the final image
-anboolRender animation sequence
-sfloatAnimation sequence start frame
-efloatAnimation sequence end frame
-incfloatAnimation sequence frame increment
-cropboolUse crop window
-crminxfloatCrop window min X
-crminyfloatCrop window min Y
-crmaxxfloatCrop window max X
-crmaxyfloatCrop window max Y
-bointBucket order; 0 = horizontal, 1 = vertical, 2 = zigzag, 3
= spiral, 4 = circle
-isboolUse image shaders
Render Pass Output flags:
-rmodeintRender mode; 0 = render, 1 = save RIB, 2 = RIB archive, 3
= background render
-ribfilestringRIB output filename
-ribbinboolOutput a binary RIB
-ribcompboolCompressed RIB toggle
Render Pass Quality flags:
-psxintPixel samples in X
-psyintPixel samples in Y
-srfloatShading Rate
-pftintPixel filter type; 0 = box, 1 = triangle, 2 = guassian, 3
= catmull-rom, 4 = bessel, 5 = sinc
-pfxfloatFilter Width in X
-pfyfloatFilter Width in Y
-rtmaxdfloatRay trace max depth
Render Pass Motion Blur flags:
-cmbbooleanCamera blur toggle
-cmbsintCamera blur samples
-tmbbooleanTransformation blur toggle
-tmbsintTransformation blur samples
-dmbbooleanDeformation blur toggle
-dmbsintDeformation blur samples
-mbpintMotion Blur postion; 0 = end on frame, 1 = centered on fra
me; 2 = start on frame
-soefloatShutter opening efficiency
-scefloatShutter closing efficiency
-safloatShutter angle for motion blur (1-360)
Render Pass Primary Display flags:
-rpdbooleanRender primary display toggle
-imgstringPrimary display image filename
-ofstringPrimary display output file format (i.e. display driver to
use); can be framebuffer, idisplay, tiff, iff,exr, cineon, zfile, bmp, eps, ps
d, radiance, null, shadowmap, texture.
-pddintPrimary display driver; 0 = framebuffer, 1 = idisplay, 2 =
maya_render_view (not recommended in batch mode),3 = tiff, 4 = iff, 5 = exr, 6
= cineon, 7 = zfile, 8 = bmp, 9 = eps, 10 = psd,11 = radiance, 12 = null, 13 =
shadowmap, 14 = texture
-pdmstringPrimary display mode
-pdbdintPredefined primary display bit depths; 0 = 8 bit int, 1 =
16 bit int, 2 = 32 bit flaot, 3 = custom quantize (obsolete, justuse the -pdq*
flags)
-pdqzerointQuantize zero
-pdqoneintQuantize one
-pdqminintQuantize min
-pdqmaxintQuantize max
-pdqditfloatQuantize dither
Render Pass Secondary Display flags:
-rsdbooleanRender secondary displays
Render Pass Shadow Maps flags:
-rsmbooleanRender shadow maps
-dssmbooleanUse displacement shaders in shadow maps
-sssmbooleanUse surface shaders in shadow maps
-assmbooleanUse atmosphere shaders in shadow maps
-issmbooleanUse interior shaders in shadow maps
-ztrfloatZ Threshold - R value
-ztgfloatZ Threshold - G value
-ztbfloatZ Threshold - B value
Render Pass Photon Maps flags:
-rpmbooleanRender photon maps
-nbpintNumber of photons
-gpmstringGlobal photon map
-cpmstringCaustic map
Render Pass Render Sets flags:
-scstringShader collection to render, empty string = none
-orsstringObjects render set; empty string = all visible objects
-lrsstringLights render set; empty string = all visible lights
-cprsstringClipping planes render set; empty string = all visible cli
pping planes
-lr boolean|name(s) Render all renderable Mayarender layers when true; when f
alse (or empty string) only the masterLayer will be rendered.Render only specif
ied layers in a coma-separated list of layers. The default is torender all rend
erable layers, unless the selected render pass already specifywhich one shuold
be rendered.
-rl boolean|name(s) Same as lr option, forcompatibility with other Maya rende
rer interfaces
Render Pass RIB Archives flags:
-arlintArchive lighting; 0 = No Lighting, 1 = Light Linking, 2 =
Light Sources and Light Linking
-arwmintArchive write mode; 0 = Reuse existing archive, 1 = Overwr
ite existing archive
-grarbooleanGenerate RIB archives toggle
-iaobooleanIgnore archived objects toggle
-artbooleanArchive transforms toggle
-cgtbooleanConcatenate geo transforms
-cltbooleanConcatenate light transforms
-argsbooleanArchive geo shaders toggle
-argabooleanArchive geo attributes toggle
Render Pass Search Paths flags:
-shpstringShader path
-txpstringTexture path
-prpstringProcedural path
Render Pass MEL Scriptss flags:
-preRenderstring Mel code executed beforerendering
-postRender string Mel codeexecuted after rendering
-preFramestring Melcode executed before each frame
-postFramestring Mel code executed aftereach frame
-postOption string Mel codeexecuted after options output
-preWorldstring Melcode executed before RiWorldBegin
Render Pass Advanced flags:
-bsxintBucket size in X
-bsyintBucket size in Y
-gsintGrid size
-txmintTexture memory
-esintEye splits
-otrfloatOpacity Threshold - R value
-otgfloatOpacity Threshold - G value
-otbfloatOpacity Threshold - B value
-cpusintNumber of CPUs
-tmsbooleanTranslate Maya shaders
-umsintUse Maya shaders
Render Pass Network Cache flags:
-uncbooleanUse net cache
-ncdirstringNet cache dir
-ncsintNet cache size
Render Pass Statistics flags:
-progbooleanOutput Render Progress
-statlintStatistics level
-statfstringStatistics file
Pre-render options:
-bffboolBake all fur attribute maps.
*** Remember to put a space between option flags and theirarguments. ***
Any boolean flag will take the following values as TRUE: on, yes,true, or 1.
Any boolean flag will take the following values as FALSE: off, no,false, or 0.