光照贴图的一些知识点

本帖最后由 罗斯柴尔德 于 2017-11-21 10:26 编辑

很多同学对光照的大小和数量不是很清楚
所以我把它写出来,给大家参考一下
其他什么相关问题也可以提出来


 
为了便于观察,我做了两个模型

 
普通参数,烘焙

 

得到一张光照贴图

 

重要的是这两个,Lightmap resolution 说的是空间内,每单位面积的光照uv分辨率
这里的40表示,一平方米的里面有一张40x40的光照贴图
下面的那个说的是最后光照贴图的大小,如果最后生成的光照贴图合并在一起,少于或者等于1024x1024
那么就只会最后生成一张光照贴图
如果最后生成的光照贴图合并在一起,大于1024x1024,那么就会生成多张的光照贴图


但是有特殊情况,就是单个物体,或者手动分uv2的时候分在了一起,而且单个物体的光照uv大于我们设置的Lightmap size(比如我们设置的1024),那么最后这个物体将会自己占用一张光照贴图

比如下面这个
 
箭头指的地方就是说,当前这个物体的光照分辨率大于了我们设置的光照贴图的分辨率,那么这个物体的光照分辨率不会按照上面的设置来,而是约束成我们设置的光照分辨率贴图大小(1024)

 

烘焙之后还是只有一张贴图,因为unity有texturemege机制,可以自动合并的有光照贴图以及ugui。合并贴图的好处是减小drawcall,增强性能
上图我们也可以看到,调整物体的Scale in Lightmap 的作用是调整物体在光照贴图中所占的大小

 

比如两个相同的物体,我们只改变Scale in Lightmap,一个是1,一个是2

 
烘焙之后的效果是1:2
 

在物体的baked Lightmap 里面我们可以找到该物体在光照贴图里面占得位置
Lightmap index 表示该物体在哪张光照贴图里面
tiling x,tiling y 表示 该物体占该张光照贴图的比例(为什么有负数?因为我们有Lightmap padding)
offset 表示该物体在光照贴图中的位置(左下角为(0,0)往右走x增大,往上走y增大)

需要尽可能的得到多张光照贴图怎么办?

QQ截图20171120183530.png (41.32 KB, 下载次数: 0)

下载附件

2017-11-20 18:36 上传


调大分辨率,减小光照贴图的尺寸

不过不建议这样


性能最好的是,光照贴图越少越好
 
也就是说这个选择1024,或者以上的
注意2048或者4096会占用大量的内存,如果电脑内存不够,不仅仅可能烘焙很慢,还可能直接崩溃

原文链接地址: http://www.bfwarch.com/forum.php?mod=viewthread&tid=241&extra=page%3D1

猜你喜欢

转载自blog.csdn.net/yuyingwin/article/details/83506009
今日推荐