Katana XGen毛发渲染流程¶
解决三个问题。
XGen毛发nHair驱动解算流程?
在制作毛发资产的时候需要通过Guides To Curves转引导曲线,以引导曲线转nHair动力学做毛发解算。
Katana渲染XGen毛发的流程?
这里涉及到环境部署,首先Katana的安装,比较傻瓜式,这里不细说,然后是KTOA(Arnold for Katana)的安装,KTOA可以部署到服务器(也就是共享文件夹中),也是傻瓜式部署,部署完安装路径下有一个launchKtoA.bat的启动项,我们需要稍加修改,才能渲染XGen毛发。内容中MTOA_PATH和MAYA_PATH需要配置,特别是MTOA和KTOA的版本搭配有一定的要求。
set "KATANA_HOME=C:\Program Files\Katana3.5v2"
set "KTOA_HOME=%cd%"
set "MTOA_PATH=\\server\manager\thirdParty\maya\mtoa\3.3.0.1\2017"
set "MAYA_PATH=C:\Program Files\Autodesk\Maya2017"
set DEFAULT_RENDERER=arnold
set "KATANA_TAGLINE=With KtoA 2.4.0.5 and Arnold 5.4.0.3"
set "path=%KTOA_HOME%\bin;%path%"
set "KATANA_RESOURCES=%KTOA_HOME%"
"%KATANA_HOME%\bin\katanaBin.exe"
修改完之后双击bat启动Katana,创建ArnoldXGen节点导入.xgen文件,创建Material(给ambient_occlusion材质),创建MaterialAssign赋予材质,创建相机,RenderSettings以及Render节点就可以渲染出XGen毛发啦。注意的是,XGen毛发在Katana中是无法显示的,只能渲染。
毛发解算完迭代渲染流程?
解算环节输出引导曲线的abc缓存,在Maya中替换驱动毛发,然后通过Export Patches for Batch Render导出.xgen文件即可。
关闭nucleus>Enable,关闭hairSystem>Use Nucleus Solver,改static
Katana本地批量渲染
https://www.aducg.com/2015/07/22/katana-local-batch-rendering-command/
/usr/local/Katana1.5v1/katana –batch –katana-file=/path/to/file/scene.katana –render-node=Render_Node_Name -t 1-20
如何渲染多帧
如何导入相机
如何设置参数
如何随机颜色
import NodegraphAPI
from Katana import KatanaFile
from Katana import RenderManager
def messageHandler( sequenceID, message ):
print message
RenderNode = NodegraphAPI.GetNode('Render') # Getting Render node
renderSettings = RenderManager.RenderingSettings()
renderSettings.mode=RenderManager.RenderModes.DISK_RENDER
renderSettings.asynchRenderMessageCB=messageHandler
renderSettings.asynch=False
for frame in range(6, 100):
print '-' * 80
print '\nRendering Node "%s" frame %s...' % (RenderNode.getName(), frame)
renderSettings.frame = frame
RenderManager.StartRender('diskRender', node=RenderNode, settings=renderSettings)
遇到的坑
- [×] XGen渲染运动模糊需要单独设置
- [×] XGen解算的时候引导曲线(所有的)需要单独导出小数帧给会XGen(-0.1, 0.1),在Katana中只导入.xgen文件,.xgen文件记录了所有缓存路径信息。
- [×] XGen生长面小数帧也不能有任何问题。
- [×] XGen需要单独输出生长面的abc缓存(小数帧)
- [×] XGen生长面和引导曲线的缓存不能脱离,小数帧也不能脱离,不然就会ci掉