... / nVoxel主页 » 3DMAX/C4D » [译]3ds max中摄像机匹配教学(第二部分)_Autodesk 3ds Max and Vray camera matching – Part two

[译]3ds max中摄像机匹配教学(第二部分)_Autodesk 3ds Max and Vray camera matching – Part two

作者:T.n.T发表时间:2012-4-9本文链接:http://www.nvoxel.com/nvoxel-translation-autodesk-3ds-max-and-vray-camera-matching-part-two.html

在第二部分教学中,我们讲解的内容是:如何在MAX中照亮你已经匹配好的摄像机场景

如果你没有看过第一部分的话,你可以点击这里查看第一部分教学

需要注意的是,这个系列教学中没有讲到材质的创建方法

教学场景中的模型需要被赋予合适的材质~

为了让场景中的照明和整个环境相符合,我们必须要用到一张HDR作为照明贴图

这里我介绍一种简便获得HDR贴图的方法

对于那些不熟悉单反相机的人来说我介绍的这个方法也可以得到合适的贴图

这个方法用iPhone 4搭配一个简易镜头再配和进行一定的PS处理来得到HDR贴图

当然如果你单反的话可以自己使用单反配合鱼眼镜头拍摄得到合适的图像贴图,跳过这一步就行了

拍摄部分可以省去,不过但是别忽略了教学中EV设置那些步骤

 

镜头准备_The Lens

 

 

(这一步有单反的朋友就忽略吧,作者这是用在iPhone 4上的镜头)

这个镜头的作用是让拍摄出的图像呈现360度球形全景效果

这样我们才能够把这个贴图用于Max中照明

如果你拍摄的不是360度球形而是普通的全景效果

那么当你把这个非360度图像用于max照明贴图的时候

环境中的照明和反射看上去会不正确

这里我用到的是Pixeet发售的一个180度鱼眼镜头

 

拍摄照片_Taking the photo

为了得到比较好的效果

拍摄的时候你最好找个三脚架来摆放iPhone,这样便于保持相机的稳定

首先将上面买到的镜头和iPhone连接起来

然后在手机上运行Pixeet官方的应用程序,从程序中选择新建全景图,选项设置为360度

每一次拍摄你需要得到四张图像,也就是45度一张,一共四张

拍摄的时候如果你没有三脚架,那么一定要确认,在转动45度的时候,相机尽量不要移动位置,原地旋转

否则的话程序在拼贴四张图像的时候会出现问题

实际上即使拼贴出的图像上有一些接缝不齐也不是什么大问题

因为拍摄出来的图像我们是用作max中照明和反射用的,因此有些小的接缝问题也不是很大

实际上程序自身带了一个十字线参考线功能

当你的相机移到合适的角度和位置的时候参考线会自动变绿

因此如果没有三脚架的话程序的这个功能也很有用

 

准备图像_Preparing the image

HDR图像通常是通过处理多张不同曝光度的RAW格式图像文件得来的

由于这里我们只有一张照片,因此我们不可能得到图像之外的曝光信息

而这里我们采用的补救措施就是:

将单张图像调整出不同的色调,然后将不同色调的图像合并起来模拟出一个HDR效果

也就是所谓的调色贴图过程

虽然得到的结果不如使用Raw格式图像来的精确

不过对于我们的教程而言,使用这样处理得到的HDR贴图也足够了

 

从你的相机中导出拍摄好的全景图,在电脑上用PS打开

打开图像后你可以看到顶部和底部各有一片黑色的区域(看上去像是程序自身的界面)

这些黑色区域在后期用作照明贴图的时候会在画面上产生错误,因此这里我们需要修正它们

这里我们可以使用PS的图章工具将这些黑色区域涂抹掉,使它们和周围的环境融合到一起

结果不必过分的追求精细,我们的目的只是为了不让最后的反射环境中出现Pixeet的Logo

 

 

默认情况下,每一张用相机拍摄得到的JPEG图像中都储存有拍摄设备的信息也就是EXIF信息

你可以右击JPEG图像然后从“属性→详细信息”中查看到曝光度,光圈大小等拍摄信息

通过读取这些信息,即使我们在PS调整过图像,PS也能够识别出这是原来的那张图像

当我们试图将文件储存为HDR格式的时候

系统会弹出一个对话框告诉我们被储存的图像曝光度是一样的不符合规范

 

而我们要做的就是通过调整图像骗过PS,让PS以为调整后的图像拥有不同的EXIF信息

为了达到这个效果,我们首先需要将文件储存为PNG格式的图像,因为这种格式的图像不会储存有EXIF信息

以PNG格式储存好文件后,我们再次打开刚刚储存好的那个PNG图像

然后在PS中新建一个Curves(曲线)调整层

拖动曲线的中间部分,让曲线的Input(输入)值为128,Output(输出)值为0

将该文件储存为img01.png文件

 

接下来将曲线的Output(输出)值设置为64,Input(输入)值保持为128

然后将该文件储存为img02.png

重复这一过程三次,每一次都将输出值增加64

我们最后一个得到文件应该是一个名为img05.png的图像,它的输出值应该为255

经过以上操作后,你应该得到一组图像(img01.png到img05.png)

它们的曝光范围是纯黑(0)到纯白(255)(0,64,128,192,255)

 

Generating the HDR image_生成HDR图像

打开PS,进入File(文件)→Automate(批处理)→Merge to HDR(合并为HDR)选项

这时会弹出一个对话框,然你选择文件

选中之前得到的五个png文件,点击OK确认

这时PS会自动导入选择的文件,过程中PS会提醒说

图像必须是使用不同的设置的相机拍摄的,你需要通过调整EV值手动设置曝光信息

这时你按照如下设置:

 

Imag01.png =-2 EV

Imag02.png =-1 EV

Imag03.png =0 EV

Imag04.png =1 EV

Imag05.png =2 EV

 

 

当合并完成后,系统会弹出一个新的窗口让你调整最后HDR图像的输出效果

HDR图像最好是设置为32位浮点格式

这样设置图像可以保存比较多的信息

这里确认你选择的是32位

接下来在PS中你会发现,比起16位图像,你可操作的选项减少了很多

当然啦,你可以自己再做调整,最好现在就是保持默认就行了,因为之后我们可以在MAX中进行调整

最后保存文件

 

创建地平面_Creating the plane plan

打开之前教学中设置好的那个Max场景文件

打开后场景中应该是已经有了一个Audi A8的车还有一个摄像机

接下来要做的就是让场景中形成由光照产生的阴影

为了得到这种效果,我们需要用到一种叫做Matte shadow的材质

在材质编辑窗口中选择创建一个VrayMtlWrapper(Vray包裹材质),将原来的材质取代掉

在基础材质栏中指定一个matte/shadow材质

这时候你可能需要在材质编辑器中将Show Incompatible(显示不兼容材质)勾选上

因为为了让Vray正常工作,你需要将这个材质用一个Vray包裹材质包裹起来

(实际上基础材质中使用Vray基础材质也可以)

 

接下来设置如下图所示:

 

接下来在场景中创建一个Vray平面,然后将上面设置的材质指定给这个地面

这个Vray平面物体是一个无限广阔的面,因此你需要将这个物体放置到Audi车下面

渲染的时候这个平面就是扮演地面的角色

 

设置灯光照明_Adding the light

我们将用之前制作的HDR贴图作为这个场景的主要照明

这里我们用一个称为IBL(Image based lighting(基于图像的照明)) 的照明方式

这种照明方式也就是将一个HDR贴图指定给一个半球Vray灯光作为照明用

这样得到的光线比较的真实

首先我们创建一个Vray灯光,将灯光的类型设置为Dome(半球)形

灯光的位置放置在哪不是很重要,因为默认位置灯光是垂直于地面的

 

在灯光参数栏中将Invisible(不可见)选项勾选上

否则渲染出的图像背景中会出现HDR贴图

我们渲染的最终图像上并不想看到HDR贴图,因为我们的渲染背景在教程一中已经指定好了

接下来将灯光参数的subdivisions(细分)值设置为24,这样可以提高渲染出的阴影质量

然后在下面的贴图None按钮上点击一下

从弹出的窗口中选择一个VrayHDR贴图指定给灯光

接下来按下快捷键M打开材质编辑器,然后将灯光参数栏中的HDR拖动复制到材质编辑器的材质球上

复制的时候从弹出的窗口中选择instance(实例)方式复制

 

 

HDR贴图的分辨率会影响到图像中阴影和光线的渲染质量

提高分辨率会让max使用更多的系统内存,也会稍稍的减慢渲染速度

不过好处就是场景中的光照更加的真实,更加符合HDR贴图本身

在大多数情况下这种场景中,这些很小的细节不会被注意到

不过呢这还得看你最后渲染出来的图像的分辨率是多少啦

不过这个例子中你能使用的最大值就是2048啦

因为我上面制作的那个HDR也就这个尺寸

 

为了让HDR在场景中正确的对齐,我需要在场景中让HDR贴图可见

这里我们首先来到Rendering(渲染)→Environment(环境)下

还是在材质编辑器中,将材质编辑器中的HDR贴图拖动复制到环境贴图中

复制的方式依然选择Instance(实例)

接下来回到窗口中,按快捷键Alt+B打开背景设置窗口

在这里将Use Environment Background(使用环境背景)选项勾选上

同时勾选上下方的Display Background(显示背景)选项

这时候你就可以在窗口中看到HDR贴图啦~

 

回到材质编辑器,载入我们之前制作好的HDR贴图

在贴图参数中,我们将贴图的类型设置为spherical(球形)

同时勾选上flip horizontally(水平翻转),调整水平值,以便于HDR正常显示

接下来就是调整HDR贴图,让它和场景的背景尽可能的匹配起来啦

由于HDR的长宽比和视图的长宽比不同,因此两者在缩放上有所偏差

你需要做的就是通过仔细观察,将HDR贴图和背景匹配起来

让HDR的主要光照和背景的光源方向接近

 

设置灯光强度_Setting the light intensity

这里有两种调整场景灯光强度的方法

两者得到的效果都是一样的,没有哪一种是优于另一种的说法

你可以在材质编辑器中调整HDR的照明值

也可以在Vray灯光参数中调整Vray灯光的强度值

在这个例子中默认的光照强度太强了

因此我将Vray灯光强度降低到了1,而材质编辑器中的图像综合值保持为1

 

一点关于直接光照的注释_A note on direct lighting

尽管使用IBL照明方式可以得到比较真实的反射和照明效果

但是由于这是不是一种直接照明的方式

因此由半球灯光照明渲染得到的阴影看上去就非常的柔和

为了增加场景中的直接光照强度,你可以在场景中添加一个Vray阳光或者目标灯光

对于这个例子而言,由于画面上的天空很高因此实际也不会产生很强的阴影

因此这里我们可以不必增加直接光照啦

 

但是在你的场景中如果你使用到了直接灯光作为照明的话

那么你必须小心翼翼的调整直接光照,调整它和HDR贴图照明之间的平衡

因为调整不好的话直接的光照的效果会盖过HDR

 

渲染设置_Render settings

将你的渲染结果保存为TIF或者PNG格式,并保证Alpha也保存了

一定要确认渲染输出图像的尺寸和第一次教学中提到的背景图像的尺寸是一样大小的

渲染的时候还要确认一切的环境贴图都被关闭了

确认背景颜色为纯黑色

这里我列出我自己的标准渲染设置,当然你可以使用属于自己的设置

 

 

Image sampler

Adaptive DMC

 

Anti-aliasing filter

Mitchel-Netravali

 

Adaptive DMC Sampler

Min subdivs = 1

Max Subdivs = 11

Clr thresh = 0.007

 

Color mapping

Type = Reinhard

Burn value = 0.5

 

Irradiance map

Medium preset

HSph subdivs = 50

Interp. Samples = 20

Clr thresh = 0.3

Nrm thresh = 0.1

Dist thresh = 01

 

Light cache

Subdivs = 1000

 

DMC Sampler

Adaptive amount = 0.85

Noise threshold = 0.01

Min samples = 8

Global subdivs multiplier = 1

 

在PS中合成_Compositing in Adobe Photoshop

打开以黑色背景渲染出来的已经匹配好角度的图像

同时打开最终渲染图像

如果你输出的为PNG格式的话,那么最终渲染图像会自动将黑色的背景去除

如果你输出的为TIF图像的话,你需要根据Alpha通道手动的去除黑色背景

(也就是在Channel(通道)中将汽车和阴影扣出来)

 

 

位置匹配好以后,你就可以进行一些后期的调整

通过调整色阶,曲线什么的,让渲染结果和背景图像的色调想相匹配

如果Max直接渲染的结果在色调上和你的背景相差很大的话,你不必担心

因为在Max中很难将色调和背景调的十分一致

因此调整色调这一步通常是通过后期完成的~

 

本文地址:http://www.nvoxel.com/?p=889

 

评论

(必填)


不是'叮'的一声变成别的东西才算是奇妙,那个走得很慢很慢,慢得不像话但是非常肯定,一直都在走得钟就已经很奇妙了
相遇 相识 相知 相爱 然后分开 / Themes by T.n.T