注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

穷到掉渣的超级奶爸阿赵

阿赵的博客

 
 
 

日志

 
 

unity自带LightMapping和3Ds Max烘焙贴图的小对比  

2012-08-28 00:09:13|  分类: Unity教程 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

        对于做虚拟现实的朋友来说,烘焙贴图应该不是一个陌生的东西。想要在有限性能的电脑上面即时运算较好的光影效果,一般都会采用烘焙贴图的方法。而除了在3dmax里面烘焙贴图之外,Unity3D也自带了LightMapping烘焙贴图的功能。下面我们来做一个小例子,对两者的意义和效果做一个小对比。

在3dmax里面,我简单的建立了几个模型,并分别赋予他们不同的颜色:

unity自带LightMapping和3Ds Max烘焙贴图的小对比 - 阿赵 - 有爪的小羔羊阿赵

 

然后使用3dmax自带的光线追踪渲染一下,会出现这样的效果:

unity自带LightMapping和3Ds Max烘焙贴图的小对比 - 阿赵 - 有爪的小羔羊阿赵
很明显的,光线追踪之后的渲染效果比没有光线追踪时立体感强了很多。这是因为高级渲染器模拟了真实环境里面光线的各种反射和散射,使物体看起来接近真实的效果。
我们所要做的烘焙,其实就是把这种经过高级渲染器计算的光影效果,记录在贴图上面。

 

unity自带LightMapping和3Ds Max烘焙贴图的小对比 - 阿赵 - 有爪的小羔羊阿赵 
unity自带LightMapping和3Ds Max烘焙贴图的小对比 - 阿赵 - 有爪的小羔羊阿赵 
unity自带LightMapping和3Ds Max烘焙贴图的小对比 - 阿赵 - 有爪的小羔羊阿赵 
unity自带LightMapping和3Ds Max烘焙贴图的小对比 - 阿赵 - 有爪的小羔羊阿赵
我对上面的几个物体展了UV,并使用3dmax的烘焙功能,烘焙出相应的贴图。并把这个带着UV信息的模型导出为FBX,放进Unity里面。
 

 unity自带LightMapping和3Ds Max烘焙贴图的小对比 - 阿赵 - 有爪的小羔羊阿赵

在unity里面,我拉出了两个模型,一个按照原来的颜色直接给予他材质,另外一个把3dmax里面烘焙的贴图贴上了模型,会出现上图的情况。场景里面也没有打灯光,假如是只有颜色的材质时,模型会没有任何的轮廓和立体感。而贴上了烘焙贴图的模型,看起来会和在3dmax里面使用光线追踪时渲染的效果差不多。

 

接下来我们对只有颜色的这个模型进行LightMapping烘焙处理。选择该模型,然后在Static里面选择Lightmap Static。

unity自带LightMapping和3Ds Max烘焙贴图的小对比 - 阿赵 - 有爪的小羔羊阿赵

 

在菜单栏的Window——>lightMapping打开lightMapping面板,在bake栏里面设置一下烘焙的参数,我这里用了如下参数:

unity自带LightMapping和3Ds Max烘焙贴图的小对比 - 阿赵 - 有爪的小羔羊阿赵

 

设置好之后,就可以烘焙了,在烘焙之前先保存场景,然后点击Bake Scene按钮。

经过漫长的等待(等待的时间取决于你的模型的复杂程度),烘焙结束,生成了贴图,我们可以在maps里面查看:

unity自带LightMapping和3Ds Max烘焙贴图的小对比 - 阿赵 - 有爪的小羔羊阿赵

 

 

 这时候,我们可以进行一个小对比了:

unity自带LightMapping和3Ds Max烘焙贴图的小对比 - 阿赵 - 有爪的小羔羊阿赵

 同样是场景里面没有灯光,但不论是经过Lightmapping烘焙的模型,还是在3DMax里面烘焙贴图的模型,都有了较为真实的光影效果。

      既然两者都能达到差不多的效果,那么究竟他们之间有什么差别呢?

3dmax烘焙:

1、可以使用各种高级渲染器对模型进行烘焙,比如Vray。

2、可以烘焙像反射这样的效果。

3、因为光影是固定了,所以在引擎里面只能按照在3DMax里面的摆放,不然就会穿帮。所以模型贴图不能在各个不同场景通用。

unity的LightMapping烘焙:

1、设置的参数相对没有3DMax里面高级渲染器丰富。

2、只能烘焙光影的追踪效果,不能烘焙反射。

3、可以一个模型放在不同场景单独烘焙,模型可以通用。 
4、由于每个场景需要烘焙一组贴图,所以如果场景多了,也会增加贴图数量。
 
至于两者之间的具体效果对比,这要根据烘焙时的具体参数来看。
这里注意的一点是,无论哪种烘焙,你都需要对模型进行展UV操作,假如UV没有展,或者UV的范围超出了0-1的框,烘焙都是会出错的。
  评论这张
 
阅读(16037)| 评论(21)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016