简便实用的MAYA网络渲染方法x

时间:2022-10-27 01:28:04  热度:0°C
简便实用的MAYA网络渲染方法2007/12/30 04/24 P/M/ 计算机动画制作除人力因素外始终存在两大瓶颈:显示速度和渲染速度。屏幕显示方面,即便专业图形卡其性价比也并不尽如人意,复杂场景中你期待的***流畅的屏幕拖动刷新始终没有出现。渲染方面,随着精细建模手段的丰富,材质灯光及环境表现从光线追踪到光能传递的进步,照片级的输出已经成为现实,但是渲染时间绝对是一个考验人耐性的过程。从现实出发,普通PC配置的MAYA如何克服瓶颈提高制作效率呢? 场景设置上,人力的高效率仍然是主要的。要考虑建模精度与视觉容差的优化,将建模与镜头景别大小、材质互补关系、动作变形幅度和位置等等一同综合权衡。要考虑材质表现的多样性,同样的质感可能有更简洁有效的节点关系,同时切记质感还与环境、灯光有重大关系。要考虑动画设置的合理性,优化历史构架,充分利用动力学转换和缓存存盘等手段,将复杂动作简单化。场景设置的优化不是一个单纯的Optimize Scene Size菜单命令所能够全部解决的,需要有意识地累积经验,良好的习惯会让你事半功倍。而在渲染方面,除了场景本身的有效设置,还有一个利器可以充分利用,那就是网络渲染将局域网中所有PC集中起来对同一动画场景进行渲染。目前虽有一些针对MAYA的网络渲染插件如Netrender、Muster等,但一般用户略显烦琐,且分布式渲染方式(将同一帧的渲染同时分配到所有机器)对参与机器要求较高,稳定性难以预料。其实分布式渲染在静帧上优势明显,而对于影视序列图像渲染,用帧分配方式未尝不可。以前我们是纯手动设置,在不同的机器上渲染不同的帧数段。其缺点同样是烦琐,且各台机器因性能差异而进度不一,分配帧数难以平衡,有时别的机器已渲染完而落下一两台机器尚有许多帧数未完成,这时再来手动分配又是一个相当麻烦的事情。笔者偶尔琢磨render命令参数中的-rep,其作用是在图像序列文件输出中跳过现有文件而渲染下一帧,其本意可能是用于重新渲染时的自动续存。好了,利用它来在局域中自动为各台机器分配帧数是个不错的主意。前提:要有畅通的局域网,各台机器安装的MAYA软件版本要一致,场景项目输出文件是序列图像而非单帧图像或avi等单一文件格式,场景项目所在目录和渲染输出文件目录都设置共享(最好起英文名)。具体方法如下。(1)场景项目所在机器的dos渲染命令:render -proj 项目路径及目录名 -rd 输出文件路径及目录名 -rep 项目路径及目录名场景文件名。(2)任意参与渲染的机器的dos命令:render -proj 项目所在机器名项目目录名 -rd 项目所在机器名输出文件目录名 -rep 项目所在机器名项目目录名场景文件名。举例说明。假定场景项目在“机器名”为p4的机器上,项目目录为d/work,场景文件为my/mb,输出文件目录为e/rec。首先将两个目录都设置共享,然后在p4这台机器上执行如下渲染命令:render-projd/work-rde/rec-repd/workmy/mb。在其它机器上执行如下渲染命令:render-projp4work-rdp4rec-repp4workmy/mb。怎么样,很简单吧?每台机器只需一行dos命令就解决问题了。这里的三个参数都是必要的。-proj参数用于指定场景项目目录,它涉及渲染所需帖图文件、粒子缓存文件等等的确定。-rd参数用于指定渲染输出文件存放目录,所有机器指向同一目录,-rep参数才有意义。-rep参数让每个参与渲染的机器自动检测并排除已渲染的帧,而按顺序搜索尚未渲染的某一帧进行渲染。需要提醒的是,若中途哪个机器退出,它当时渲染的那一帧有可能没有结束、而其它机器又会跳过这一帧,因此,所有机器渲染完毕后需检查一下输出文件中有无此种“半成品帧”,再对它单独渲染一下。除了上述三个必要参数,MAYA的dos命令渲染还有非常丰富的内容。在系统dos窗口下输入render -help可以看到所有参数。下面几个常用参数可以根据需要加入到上面的渲染命令中去。-s 设定渲染开始帧,-e设定渲染结束帧。这两个参数在临时指定渲染段落时很方便。-n 设定参加渲染的CPU的个数。0代表所有的,1代表一个,2代表两个,余类推。它用于多cpu的计算机。如果你还没有苦命到一边渲染一边又要开始新的项目,就设置参数 -n 0 吧。render命令参数很多,最好是在场景的 renderGlobal 里将诸如文件名、分辨率、分层等等比较固定的参数设置好,免得敲命令符时罗里罗嗦。其实利用render命令一次自动渲染多个场景是又一个突出的优势,将它应用到网络渲染中更是相得益彰,只需将上述渲染命令行换成相应的批处理文件就行了。在记事本里编辑文本(参数依照模式自定):render-projd/work-rde/rec-repd/workmy1/mbrender-projd/work-rde/rec-repd/workmy2/mbrender-projd/work-rde/rec-repd/workmy3/mb存盘为aaa/bat。所有机器都在dos窗口进入该文件位置执行它就行了。这种网络渲染方式的优点是简单、实用、方便。第一,任何时候随时加入计算机参与或退出渲染,只是退出某台机器时注意一下它的当前帧是否完成。第二,各个机器之间没有相互牵制,而是轮流自动获取下一帧渲染任务,性能水平没有统一要求,稳定可靠。第三,本质上没有工作站与服务器之分,因此也就省却了分别安装两套渲染程序的麻烦,而项目机器与参与机器的唯一区别只是渲染命令中本地路径和网络路径的表述不同。第四,所有参与渲染的机器都不用打开MAYA界面,从而节约资源。经过实际测试,该方法已在我台动画科局域网进入实际应用,大大简化了工作程序,提高了三维制作项目的渲染效率。需要说明的是这种网络渲染方法只支持MAYA自身渲染器,因为mentalray渲染器的dos命令渲染没有-rep这项参数。有使用maya一段時間的人應該有聽過利用批次檔來算maya的render吧 這是利用maya內建的render指令來撰寫的,最大的功能就是可在不用開啟maya的狀態執行算圖要寫出這個指令很簡單你只要打開筆記本(notepad)把指令輸入進去後,存檔為 檔名/bat 檔就可以了EX1/現在有一個test/ma檔你的Render Globals的設定都沒問題的話,只需輸入-render test/ma-並另存為render/bat檔跟test/ma檔放在一起點兩下就可以執行EX2/現在有一個test/ma檔我只設定好算圖的品質但是Render Global算圖設定沒有確定或算同檔多個鏡頭時,可利用基本的參數設定-REM /檔案test/ma算camera0103不同鏡頭render -s 1 -e 30 -im test1 -cam camera01 -rd C/imagestest test/marender -s 1 -e 30 -im test2 -cam camera02 -rd C/imagestest test/marender -s 80 -e 200 -im test3 -cam camera03 -rd C/imagestest test/ma-REM是指這行指令不執行/後面的是說明render執行maya Render接下來我列出常用的參數供大家參考有些不常用的參數就先暫時不放上參數說明部分我已翻譯中文,說明的部分請勿轉載Rednder Global文字 參數 說明文字-startFrame -s 開始影格endFrame -e 結束影格byFrame -b 算圖的間隔數project -proj 要使用的專案目錄renderDirectory -rd 算圖後要放入的資料夾image -im 圖片輸出的名稱 (功能同 -p)pix -p 圖片輸出的名稱 (功能同 -im)cameraOverride -cam 所要算圖的鏡頭imageHeight -ih 圖片高度的像素(功能同 -y)imageWidth -iw 圖片寬度的像素(功能同 -x)maximumMemory -mm 算圖最大記憶體使用量 (單位:MB)motionBlur -mb 動態模糊的開關motionBlurByFrame -mbf 動態模糊的效果是以多少格為單位換算shutterAngle -sa 動態模糊在攝影機的角度 (1-360)motionBlur2D -mb2d 2D動態模糊的開關blurLength -bll 2D動態模糊的長度blurSharpness -bls 2D動態模糊的銳利程度smoothValue -smv 2D動態模糊的平滑數值smoothColor -smc 2D動態模糊的平滑色彩的開關outputFormat -of 輸出的檔案格式/ si soft softimage/ gif/ rla wave wavefront/ tiff/ tif/ tiff16 tif16/ sgi rgb/ sgi16 rgb16/ alias als pix/ iff tdi explore maya/ jpeg jpg/ eps/ maya16 iff16/ cineon cin fido/ qtl quantel/ tga targa/ bmpiprFile -ipr 取得IPR檔案xResolution -x 最後的圖像的x決定(功能同 -iw)yResolution -y 最後的圖像的y決定(功能同 -ih)備註:新版的寬跟高如果使用-ih-iw無法算圖的話請改用-x-yWindows XP的关机是由Shutdown/exe程序来控制的,位于WindowsSystem32文件夹中。如果想让Windows 2000也实现同样的效果,可以把Shutdown/exe复制到系统目录下。 比如你的电脑要在22/00关机,可以选择开始运行,输入at 22/00 Shutdown -s,这样,到了22点电脑就会出现系统关机对话框,默认有30秒钟的倒计时并提示你保存工作。如果你想以倒计时的方式关机,可以输入Shutdown/exe -s -t 3600,这里表示60分钟后自动关机,3600代表60分钟。 设置好自动关机后,如果想取消的话,可以在运行中输入shutdown -a。另外输入shutdown -i,则可以打开设置自动关机对话框,对自动关机进行设置。 Shutdown/exe的参数,每个都具有特定的用途,执行每一个都会产生不同的效果,比如-s就表示关闭本地计算机,-a表示取消关机操作,下面列出了更多参数,大家可以在Shutdown/exe中按需使用。 -f:强行关闭应用程序 -m:计算机名:控制远程计算机 -i:显示图形用户界面,但必须是Shutdown的第一个选项 -l:注销当前用户 -r:关机并重启 -t:时间:设置关机倒计时 -c:消息内容:输入关机对话框中的消息内容(不能超127个字符)当然如果觉得以上麻烦的话,或者种种原因是上述无法奏效,我推荐实用一款自动关机软件EasyShutSys,之所以推荐此软件,是因为该软件是绿色软件免安装,体积小,外观不错。用Shutdown命令实现网络统一关机 笔者所在单位下班后常有很多老师不关电脑,领导发现后要求解决这个问题。我想如果到各办公室去查看,这很费时,于是就想能否通过一台电脑把所有的机器都关掉。因为所有的办公用机安装的都是Windows XP系统,就想到了使用远程关机“Shutdown”命令。具体方法如下: 步骤1 单击“开始运行”,在对话框中输入“Gpedit/msc”,单击确定,打开“组策略编辑器”。步骤2 在“组策略编辑器”窗口的左边打开“计算机配置Windows设置安全设置本地策略用户***指派”,在右边的窗口选择“从远端系统强制关机”。在弹出的对话框中显示目前只有“Administrators”组的成员才有权远程关机;单击对话框下方的添加用户或组按钮,然后在弹出的对话框中输入“Heyongsheng”(管理员账号),再单击确定。步骤3 这时在“从远端系统强制关机”的属性中便添加了一个“Heyongsheng”用户,单击确定,最后关闭“组策略编辑器”窗口。对各办公室的电脑进行上述操作后,我们便给每台计算机的“Heyongsheng”用户授予了远程关机的权限。到下班时,我只要在自己的机器上进行以下操作:步骤1 单击“开始运行”,在对话框中输入“Shutdown -I”,屏幕上将显示“远程关机”对话框(图1)。图1 远程关机控制窗口步骤2 单击游览按钮,出现查找计算机的对话框。步骤3 单击开始查找按钮,会出现本网络中的所有计算机(图2)。图2 查找局域网中所有计算机步骤4 按住Ctrl键,用鼠标选择要关闭的计算机,最后单击确定,这时在远程关机对话框中会出现要关闭的计算机。步骤5 在选项的下拉框中选择一个合适的关闭理由,然后点击确定(图3)。图3 远程关机依照以上步骤进行操作,远程关机就自动完成了。用shutdown命令实现系统的自动关机Submitted by robertb9527 on 六月 5/ 2003 - 18/53/ 有的时候我们不一定需要什么特殊的软件,一些小功能其实就隐藏在你的操作系统中。比如我们用shutdown命令就可以实现系统的自动关机:点击开始-运行,输入cmd,到命令行方式:输入shutdown -s -t 3600,就能实现1小时后自动关机,3600的单位是秒;输入at 09/00 shutdown -a,定时9点关机;输入shutdown -a,取消定时关机。补充自动关机命令参数在Windows XP中的cmd/exe多了一个很有用的东西:shutdown 使用这个东西就能够实现自动关机/重启等操作。使用方法如下:运行cmd/exe/ 输入shutdown/回车就可以看到使用帮助(全中文的),这里列出

免责声明:
1. 《简便实用的MAYA网络渲染方法x》内容来源于互联网,版权归原著者或相关公司所有。
2. 若《86561825文库网》收录的文本内容侵犯了您的权益或隐私,请立即通知我们删除。