查看: 2496|回复: 0
打印 上一主题 下一主题

[插件] 大招:Maya-Vray-Nuke 深度合成图文教程

[复制链接]

5472

主题

6

听众

1万

积分

版主

Rank: 7Rank: 7Rank: 7

纳金币
76544
精华
23

活跃会员 荣誉管理 突出贡献 优秀版主 论坛元老

跳转到指定楼层
楼主
发表于 2017-6-28 15:17:40 |只看该作者 |倒序浏览
  vray3.0 for max中最让人兴奋的一项功能就是exr2.0的支持,也就意味着vray可以输出deep通道了.这给cg的后期制作、渲染提供了巨大的便利特别。是对于liveaction来说,,那可是相当方便的。还有就是对于毛发跟烟雾流体的遮罩问题,也可以完美解决。唯一的问题就是deep层的数据量是很大的,需要比较多的硬盘空间。
  rm跟ar以及mantra都是能够支持deep的,多软件流程的问题也可以通过deep来解决.还是相当方便的
  以早期版本讲解一下如何使用,3.0的用户其实也是可以直接使用的,方法都是一样的.
  首先你需要一个插件(3.0请直接无视),如下图所示.你可以去vray的官方论坛或者gg一下.如果还没有的话,建议你可以去找vray官方的售后支持。

14968168843083.jpg

  说一下如何安装
  下载好插件之后.里面有一个readme,按照指示一步一步来...这里作者没有具体说明,忽略.maya2014里面你不需要替换掉任何文件,因为vray插件已经更新内置了这项功能.,max里面使用给予的文件替换掉vrayplugins里面的“vraystereoscopicnnnn.dlo”文件
  现在你就能输出deep文件了,但是你还得在nuke里面读取他.所以你需要把“vrstreaderdeep.dll”放到你的nuke插件路径下.这个文件并不会在你nuke里面生成一个新的read节点,取而代之的是让你的deep read能够直接去读取vray输出的deep通道

  3d场景
  这是我用qtown脚本生成的简单城市场景.在渲染层里面把他划分了一下.地面一层,前面的建筑物一层,最后面的建筑物一层

14968168856177.jpg

  龙渲如何渲染deep
  如果你是使用的maya,在农场 渲染设置里面,vray common面板里面,拉倒最底下,你会看到 “post-translate python script”这么一项.然后输入下面的脚本from vray.utils import * p=create("outputdeepwriter", "deepwriter") p.set("file", "path/to/deepfilename..vrst") # disable normal output to prevent errors findbytype("settingsoutput")[0].set("img_file", "")
  简单来说,这个脚本会覆盖掉你当前的输出设置,并且会渲染输出一个”.vrst”的文件,里面包含着你场景的deep数据,以及你的beauty层,还有一些其他的渲染元素
  如果你想要使用exr文件的话,把vrst转换为exr也是很简单的.直接使用vrst2exr.exe就可以了(把需要转换的文件拖拽过去即可).nuke里面的deepread,exr跟vrst都是可以读取的.
  max用户:创建一个vray的帮助物体,位于(helpers >> vray >> vraystereoscopic).设置shademap 模式为 “render shade map”.打开 “adjust resolution” 属性.选择“deep pixel mode”并且选择输出路径.渲染之后再你就能在之前你选择的路径你找到shademap了,也就是deep通道。

  nuke里面读取deep文件

14968168854639.jpg

  创建deepread节点,然后使用deepmerge节点把deep文件合并到一起.这时候你就能见到deep数据是有多么的好用了.你能够看到你的图像是完美的合并在一起的,他们之间是不需要渲染任何遮罩的(不管你合并时候的顺序是怎样的).因为每个文件的deep数据会为每个像素的z轴线存储一个数值。

14968168858421.jpg

  你可以在通道里面查看deep信息,鼠标放在图片上能够查看到deep的数值。
  研究一下其他的deep节点

14968168852385.jpg

  使用deeptopoints节点,可以让你在nuke的三维试图里面查看到图像的点云信息.如果你想要把nuke里面的三维物体放置进去的话,这是非常有用的.但是你得需要从你的三维软件里面来导出相机,并且在nuke中读取。

14968168852950.jpg

  在场景中放入nuke的3d物体,之后我们可以使用deep图像来把他们合并到一起去(遮罩什么的会完美匹配)

14968168859349.jpg

  使用scene节点把他们合并到一起,并且使用scalinerender来渲染他们.现在我们就可以使用deepfromimage节点来提取刚出图像的deep数据了.然后我们便可以把刚刚生成的图像跟之前的图像合并到一起了.他们之间是不需要任何遮罩的,更不需要你来手动roto.因为他们都存在deep数据,所以知道如何合并到一起了.会自动处理前后关系。

14968168859992.jpg

  你可以随意去调节你的物体的位置,看看他们是如何跟场景交互的.放在原始物体的前面后面都是没有问题的,不需要画roto.

  总结
  通过上面的简单小案例,我们能否看到deep合成的无限可能性.当跟复杂场景交互的时候,比如流体,毛发一类不太方便渲染遮罩的,还有就是liveaction的部分.这个完全就可以加入到你的工作流程中去.最后给个小提示.你可以使用deeprecolor节点来合并那些不支持deep数据的渲染器渲染出来的图像。

分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-13 08:10 , Processed in 0.103460 second(s), 36 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部