当前位置:   article > 正文

【Unity】Sprite Atlas功能讲解_unity allow rotation

unity allow rotation

目录

SpriteAtlas创建方法

1、Type: Maskter母版 Variant变体

2、Include Build: 勾选时运行游戏时自动加载入内存中,否则需要手动加载(使用到的时候才会加载!)

3、Allow Rotation:允许图集的图片旋转,勾选后Unity会寻找最好姿势放置在图集内(这样就能让图集容下更多的图片,但是一般我们不勾选,因为这个旋转会影响到实际显示。)

4、Tight Packing: 勾选后使用精度更高的裁剪图集图片(Mesh裁剪),否则是矩阵裁剪(图片是一块矩形图),如果不需要高精度裁剪就别勾,如果发现裁剪出的图片有显示不正确问题,那就可以勾选它了。

5、Padding:图集中一行或一列最大图片个数,有2、4、8选项

6、Read/Write Enabled:图集图片读写权限

7、Generate Mip Maps: 消耗更多的内存带来更好的表现,主要针对高配机时可开启,手游一般都可能不开启。

8、sRGB:使用gamma空间存储rgb,使用后会图片整体变暗;具体效果不清楚,默认不选 

9、Fitler Mode: Point(像素级)、Bilinear(渐变)、Trilinear(更牛逼的)默认Bilinear(一般也是用它,除非你游戏是像素风、或者有更高的要求时选Trilinear)

10、压缩格式

11、Objects for Packing: 打入图集的文件,可放入Texture2D、Sprite、文件夹放入文件夹时会将文件夹下的所有Texture2D、Sprite放入图集

12、Pack Preview按钮:点击后会在预览界面显示出图集的具体数值,如图集的内部表现、空间大小、尺寸、使用的压缩格式


官方文档说明:https://docs.unity3d.com/2017.4/Documentation/ScriptReference/U2D.SpriteAtlas.html

SpriteAtlas创建方法

1、Type: Maskter母版 Variant变体

2、Include Build: 勾选时运行游戏时自动加载入内存中,否则需要手动加载(使用到的时候才会加载!)

手动加载方法如下:

  1. using UnityEngine;
  2. using UnityEngine.U2D; //引用SpriteAtlas的命名空间!
  3. public class MyTest : MonoBehaviour {
  4. void Start () {
  5. //SpriteAtlasManager.atlasRegistered //SpriteAtlas加载完成后调用
  6. //当需要加载图集时调用,传入tag路径,action回调传入加载出来的SpriteAtlas即可完成了图集加载,之后会触发上面的方法
  7. //如果勾选了Include Build属性,在启动游戏时自动进行这个操作...
  8. SpriteAtlasManager.atlasRequested += (string tag, System.Action<SpriteAtlas> action) =>
  9. {
  10. Debug.Log("tag:" + tag); //tag是SpriteAtlas资源的文件名称
  11. action(Resources.Load<SpriteAtlas>(tag));
  12. };
  13. SpriteAtlasManager.atlasRegistered += (SpriteAtlas spriteAtlas) =>
  14. {
  15. Debug.Log("Dosomething!" + spriteAtlas.name);
  16. Sprite sprite = spriteAtlas.GetSprite("AnimPic_0");
  17. Debug.Log("从图集中获取到的Sprite:" + sprite.name);
  18. };
  19. }
  20. }

 上图为加载失败的情况,在编辑器模式下依然是可以看到图片的,运行时如果图片依赖的图集没有被成功加载到内存,就这样了

请注意在图集中它的名字只是Texture的名称,Sprite的名字是AnimPic_0(所以如果出现加载不到图集图片的情况,那就是Sprite的名称不对)

为什么贴图和Sprite名称会不一样?一般来说是一样的,那是因为我进入了Sprite Editor修改了Sprite的Name(哈哈哈~)

运行时打印:

这种动态加载方法好处就是能控制加载,比如加载AB包采用异步加载,如果默认是自动的话就可能是同步加载。

3、Allow Rotation:允许图集的图片旋转,勾选后Unity会寻找最好姿势放置在图集内(这样就能让图集容下更多的图片,但是一般我们不勾选,因为这个旋转会影响到实际显示。)

4、Tight Packing: 勾选后使用精度更高的裁剪图集图片(Mesh裁剪),否则是矩阵裁剪(图片是一块矩形图),如果不需要高精度裁剪就别勾,如果发现裁剪出的图片有显示不正确问题,那就可以勾选它了。

5、Padding:图集中一行或一列最大图片个数,有2、4、8选项

6、Read/Write Enabled:图集图片读写权限

7、Generate Mip Maps: 消耗更多的内存带来更好的表现,主要针对高配机时可开启,手游一般都可能不开启。

8、sRGB:使用gamma空间存储rgb,使用后会图片整体变暗;具体效果不清楚,默认不选 

9、Fitler Mode: Point(像素级)、Bilinear(渐变)、Trilinear(更牛逼的)默认Bilinear(一般也是用它,除非你游戏是像素风、或者有更高的要求时选Trilinear)

10、压缩格式

11、Objects for Packing: 打入图集的文件,可放入Texture2D、Sprite、文件夹
放入文件夹时会将文件夹下的所有Texture2D、Sprite放入图集

12、Pack Preview按钮:点击后会在预览界面显示出图集的具体数值,如图集的内部表现、空间大小、尺寸、使用的压缩格式
 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/595935
推荐阅读
相关标签
  

闽ICP备14008679号