咨询电话:400-810-1418服务与监督电话:400-006-6572

使用Nuke进行2D转3D立体世界详解案例教程(十):3D Stereo Camera制作

发布时间:2019-11-26 09:07:35

※步骤7

在Group1 Node Graph面板中,选择left节点, 在节点工具栏上单击图标,从弹出的菜单中选择joinViews [组合视图]节点,这时1ef节 点便连接上了新创建的joinViews节点的ef输入端,接着将night输入端连接到right节点上,输出端连接到Ouput1节点上,如图左所示。

joinViews节点的作用是同时衔接两台摄像机机,并通过连接输入端使Viewer视窗分辨出其中的左右眼摄像机,这时单击Viwer上方的左右眼摄像机切换按钮,便会在视图中显示相应相连的那一台摄像机。

※步骤8

切换操作面板到Node Graph [节点操作面板],双击Group1节点打开参数栏。

可以看到Group1节点的参数面板相对简单,没有过多的参数或按钮,但是在其顶部的按钮栏上,比其他参数栏多出一个按钮, 该按钮的作用就是展开Group1 Node Graph面板。参数栏中的lock a connections [锁定左右连接]选项,在勾选状态下可以锁定群组中所有节点间的连接,使其不被更改,其左则的export as gizmo.. [输出插件]按钮,可以将这一个节点组作为一个插件输出保存到硬盘上,如图右所示。

 使用Nuke进行2D转3D立体世界详解案例教程(十):3D Stereo Camera制作

※步骤9

设置Group1节点的名称为StereoCamera,并设置节点显示颜色为深紫色。

Tips :我们可以在Group1节点参数栏中勾选hide input [隐藏输入端]选项,当节点不处于选择状态时,输入端箭头会被隐藏,当节点被选中时,输入端箭头会自动显示,这是为了让视觉上更美观,大家可以根据喜好选择使用。

左右眼摄像机实际上代表的是人的左右眼,这两台摄像机之间的距离则是人眼的瞳距(两眼之间的瞳孔间距),那么应该如何控制这个瞳距呢?我们可以在StereoCamera参数栏中制作一个参数面板用于控制该参数值。

※步骤10

选择StereoCamera节点,将光标放置在该节点的参数栏上并单击鼠标右键,从弹出的菜单中选择Manage User Knobs.. [管理用户面板]命令,此时便会弹出一个用于创建面板的窗口。

※步骤11

单击Add [添加]按钮,在弹出的菜单中选择Tab [标签栏]命令,即创建一个新的参数栏,在弹出的窗口中设置Name [名称]为StereoCamera, Label [标签]同样设置为StereoCamera,单击OK按钮确认并关闭Tab窗口。

确认创建操作后,可以看到原来Group1的参数栏上多了一个StereoCamera标签, 原本的Group标签变为Node,如图所示。 既然面板已经创建了,接着就要创建可控制的参数滑条。

 使用Nuke进行2D转3D立体世界详解案例教程(十):3D Stereo Camera制作

※步骤12

在上一级创建窗口中再次单击Add按钮,从弹出的菜单中选择Floating Point Slider... [浮点滑..]命令,在弹出的Floating Point Slider窗口中设置Name [名称]为CameraDistance (两台摄像机之间的距离,即瞳距),Label [标签]设置为LRD (缩写,LeftRightDistance),Maximum [最大]值设为10(暂时设定的距离值),单击OK按钮确认,并且在上级创建窗口中单击Done [完成]按钮确认创建操作,如图所示。

 使用Nuke进行2D转3D立体世界详解案例教程(十):3D Stereo Camera制作

Minimum [最小]和Maximum [最大]参数代表泪块两瑞控制的最大值和最小值,由于目前还不知道两台摄像机之间应该设定的数值是多少,所以只能暂时设定Maximum [最大]值为10,后面还可以再次更改。确认创建后可以看到面板中名为LRD的浮点类型的参数滑块已经被创建出来。那么如何让这个滑块控制左右眼摄像机之间的距离呢?实际上只要当拖动滑块时,right Camera沿x轴正方向移动,lefcamera沿x轴往负方向移动就可以了,这一操作可以使用表达式进行关联。

(未完待续)