首页 > Unity3D频道 > 【Unity3D研究院之游戏开发】 > Unity3D研究院之动态修改烘培贴图的大小&脚本烘培场景(七十二)
2014
06-23

Unity3D研究院之动态修改烘培贴图的大小&脚本烘培场景(七十二)

Unity默认烘培场景以后每张烘培贴图的大小是1024。但是有可能你的场景比较简单,用1024会比较浪费。如下图所示,这是我的一个场景的烘培贴图,右上角一大部分完全是没有用到,但是它却占着空间。 

Unity3D研究院之动态修改烘培贴图的大小&脚本烘培场景(七十二) - 雨松MOMO程序研究院 - 1

有时候可能你想去修改烘培贴图的大小,如下图所示以前我试过在Inspector视图中修改烘培贴图的大小,图虽然是小了但是它是整体缩小,后来在手机上面发现这这样直接修改烘培贴图的大小确实有问题,接缝方面处理的有问题。而且每次烘培完场景以后都需要这样缩一下。。(千万不要这样缩图)

Unity3D研究院之动态修改烘培贴图的大小&脚本烘培场景(七十二) - 雨松MOMO程序研究院 - 2

我们需要美术在烘培场景的时候去设置烘培贴图的大小,可是Unity的烘培菜单根本没有设置烘培贴图的大小。。后来我想到了一个巧妙的办法,用脚本来烘培场景,顺便设置烘培贴图的大小。。代码很简单。

Clear()就是删除当前场景的烘培贴图。

Bake()就是直接烘培当前场景,我还可以在烘培场景之前加一些代码。。。一切都是脚本化操作。嘿嘿。。

maxAtlasHeight和maxAtlasWidth 就是每张烘培贴图的宽和高,一般我们每个场景用一张512的就差不多了。烘培贴图必须要2的幂次方,并且要正方形的。

 这样美术只用在Lightmapping窗口中设置好当前烘培场景的参数。。调用我们写的拓展菜单方法就可以了。这里我设置的烘培贴图的大小是512。

利用上面的方法我们把一张1024的贴图缩小到了512,效果没有什么变化但是空间缺缩小了4倍。。

 

Unity3D研究院之动态修改烘培贴图的大小&脚本烘培场景(七十二) - 雨松MOMO程序研究院 - 3

IOS PVRTC压缩后512的贴图只有170.8KB,很给力吧。。

雨松MOMO提醒您:亲,如果您觉得本文不错,快快将这篇文章分享出去吧 。另外请点击网站顶部彩色广告或者捐赠支持本站发展,谢谢!

--

最后编辑:
作者:雨松MOMO
专注移动互联网,Unity3D游戏开发
捐 赠如果您愿意花10块钱请我喝一杯咖啡的话,请用手机扫描二维码即可通过支付宝直接向我捐款哦。