Unity3d中,为什么要用Sprite Atlas(图集)

以NGUI为例,Sprite Atlas是一个包含多个小图像的大图像,这些小图像被称为sprites。通过使用Sprite Atlas,可以将多个小图像合并到一张大图像中。由于在渲染中,每次调用都需要进行顶点转换、纹理采样等操作,而通过将多个精灵共享同一个纹理,Unity可以减少纹理切换的次数,从而减少 DrawCall 的次数和内存占用,达到提高游戏的性能和效率的目的。

在NGUI中,创建Sprite Atlas非常简单,可以使用内置的atlas maker工具或使用第三方工具来创建atlas。一旦创建了atlas,就可以在其中包含多个sprites,并在游戏中使用这些sprites来渲染UI元素。

使用atlas还有一个重要的优点是,可以将相关的UI元素放在同一个atlas中,以便于管理和维护。例如,可以将所有游戏角色的图标放在同一个atlas中,以便于统一管理和更换。

atlas的创建:

打包完成的Atlas:

可见atlas本质上也是一张图,当我们在选取其中的图像素材时,将原本的Texture数据结构请求变成了相对简单的x,y坐标请求。由此,atlas可以看作是一种对图像数据进行压缩和组织的方式,使得图像的访问和传输更加高效

使用atlas:

猜你喜欢

转载自blog.csdn.net/qingxiu3733/article/details/131877706
今日推荐