精华内容
下载资源
问答
  • Unity图集打包

    2018-02-03 19:12:00
    http://www.xuanyusong.com/archives/3304 http://www.xuanyusong.com/archives/3315 http://www.xuanyusong.com/archives/3499 http://www.xuanyusong.com/archives/3768   ...

    http://www.xuanyusong.com/archives/3304

    http://www.xuanyusong.com/archives/3315

    http://www.xuanyusong.com/archives/3499

    http://www.xuanyusong.com/archives/3768

     

    http://blog.csdn.net/ios_song/article/details/52292042

    https://blog.uwa4d.com/archives/fillrate.html

    https://zhuanlan.zhihu.com/p/32591450

    https://zhuanlan.zhihu.com/p/30604224

    展开全文
  • Unity图集打包文件-TexturePacker
  • 图集打包工具。实测Unity版本:4.6.8。NGUI版本:3.7.5。 默认三种打包方式。PC端的格式为ARGB32。安卓端的格式为ETC2_RGBA8,IOS端的格式为PVRTC_RGBA4。 欢迎提意见。小弟会及时修改上传。也希望各位路过的大牛...
  • 项目导入后 记得启用,在Edit->Project Settings->Editor->Sprite Packer->Mode设置成Always Enabled ,然后Edit Tools -->AtlasMaker 下具体解释:...
  • Unity UGUI图集打包Assetbundle

    千次阅读 2018-08-10 16:10:14
    那么Ugui图集怎么打包Assetbundle? 只要我们把Assetbundle的标签设置为PackingTag就可以,然后打包Assetbundle,测试过drawcall不会增多 这些动态设置PackingTag和Assetbundle一般都用工具来设 我这个工具图集...

    Ugui图集,Sprite是根据PackingTag来分图集

    那么Ugui图集怎么打包Assetbundle?

    只要我们把Assetbundle的标签设置为PackingTag就可以,然后打包Assetbundle,测试过drawcall不会增多

    这些动态设置PackingTag和Assetbundle一般都用工具来设

    我这个工具图集路径是在Assets/AssetBundleRes/atlas/

        [MenuItem("AssetBundle/一键设置atlas目录的图集(atlas下子文件夹名字作为图集名)")]
        /// <summary>
        /// 设置图片格式,设置图集assetbundleName
        /// </summary>
        static void SetSpriteAltas()
        {
            AssetDatabase.Refresh();
            DirectoryInfo thisOne = new DirectoryInfo(Application.dataPath + "/AssetBundleRes/atlas/");
            foreach (DirectoryInfo info in thisOne.GetDirectories())
            {
                string[] paths = Directory.GetFiles(info.FullName);
                for (int i = 0; i < paths.Length; i++)
                {
                    bool change = false;
                    string path = paths[i].Replace('\\', '/');
                    if (path.Contains("meta"))
                    {
                        continue;
                    }
                    System.Drawing.Image ri = System.Drawing.Image.FromFile(path);
                    path = path.Substring(path.IndexOf("Assets/"));
                    int textureSize = Math.Max(ri.Width, ri.Height);
    
                    AssetImporter asset = AssetImporter.GetAtPath(path);
                    if (null == asset) { continue; }
                    if (asset.assetBundleName != info.Name)
                    {
                        change = true;
                        asset.assetBundleName = info.Name; //设置Bundle文件的名称  
                    }
    
                    TextureImporter ti = AssetImporter.GetAtPath(path) as TextureImporter;
                    if (ti.textureType != TextureImporterType.Sprite)
                    {
                        change = true;
                        ti.textureType = TextureImporterType.Sprite;
                    }
                    if (ti.spriteImportMode != SpriteImportMode.Single)
                    {
                        change = true;
                        ti.spriteImportMode = SpriteImportMode.Single;
                    }
                    if (ti.mipmapEnabled != false)
                    {
                        change = true;
                        ti.mipmapEnabled = false;
                    }
                    if (ti.spritePackingTag != info.Name)
                    {
                        change = true;
                        ti.spritePackingTag = info.Name;
                    }
                    if (ti.maxTextureSize != 1024)
                    {
                        change = true;
                        ti.maxTextureSize = 1024;
                    }
                    if (ti.wrapMode != TextureWrapMode.Clamp)
                    {
                        change = true;
                        ti.wrapMode = TextureWrapMode.Clamp;
                    }
                    if(textureSize <= 16 && ti.textureCompression != TextureImporterCompression.Uncompressed)
                    {
                        change = true;
                        ti.textureCompression = TextureImporterCompression.Uncompressed;
                    }
                    if (change)
                        asset.SaveAndReimport();
                }
            }
            AssetDatabase.Refresh();
        }

     

    展开全文
  • Unity3d打包图集

    千次阅读 2019-07-15 11:06:39
    1、使用图集的好处: 使用图集可以减少drawcall,提升效率。 2、什么是drawcall? 游戏中的图片模型最终是要给到显卡去...3、UGUI打包并使用图集有3种方法: a、一种是使用系统自带的打包工具SpritePacker; Un...

    1、使用图集的好处:
    使用图集可以减少drawcall,提升效率。
    2、什么是drawcall?
    游戏中的图片模型最终是要给到显卡去渲染的,图片开始是要从硬盘读到内存里面去的,然后CPU通知GPU要开始渲染,这一次通知就是一次Drawcall。通知就要通信,还要把数据扔过去,肯定是要耗性能的。
    3、UGUI打包并使用图集有3种方法:
    a、一种是使用系统自带的打包工具SpritePacker;
    Unity2017带来了新的SpriteAtlas工具,该工具可以方便的将碎图打包成纹理集,相比于之前SpritePacker工具,SpriteAtlas将统一的管理纹理集,不必再到每个碎图上查看被打包到了哪个纹理集,并且解除了sprite使用者和纹理集的强依赖关系。
    (不错的一篇文章http://ju.outofmemory.cn/entry/327718)
    b、一种是使用TexturePacker打包图片并使用;
    在打包图集的时候,最好按照公用的放在public ,其他的按照功能进行打包。
    使用这个工具需要下载并导入一个Unity3d的插件,TexturePacker自己出的的一个插件TexturePacker Importer,(插件链接https://www.assetstore.unity3d.com/en/#!/content/16641),下载并成功导入之后,不用写任何代码,作任何操作,插件会自己根据.tpsheet,将刚才打包好放进入工程的大图自动裁剪成小图。
    在这里插入图片描述

    c、一种是Unity2017版本之后的的图集对象SpriteAltas
    (1)Sprite Atlas 创建图集
    在这里插入图片描述
    (2)选中需要帮你设置打包图集的Edit ,Edit——>Project Settings——>Edit——>Mode 选择Always Enabled
    在这里插入图片描述
    在这里插入图片描述
    (3)点击+选择你想要的文件夹,然后pack preview。
    在这里插入图片描述
    注意这个bag文件夹中每个图片的Texture Type都是Sprite(2D and UI)
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190715105656141.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDgxOTIyMA==,size_16,color_FFFFFF,t_70

    展开全文
  • 利用TexturePacker打包图集,这个压缩包里有TexturePacker的安装文件和实例demo,可以帮您试下一键打包图集
  • 基于Unity3D的图集打包 Unity3D的UGUI图集打包采取自动打包的方式,旨在让开发者彻底模糊图集的概念,无须关注图集是如何打包的,从而让开发者将更多的精力放在逻辑开发上。 步骤如下, 1. 首先创建3个Image组件...

     

    基于Unity3D的图集打包

    Unity3D的UGUI图集打包采取自动打包的方式,旨在让开发者彻底模糊图集的概念,无须关注图集是如何打包的,从而让开发者将更多的精力放在逻辑开发上。

    步骤如下,

    1. 首先创建3个Image组件分别显示3张不同的图片,此时还没打包图集,可以看出Batches为3

     

    2. 设置图集打包开关,Edit\rightarrowProject Settings\rightarrowEditor,如下图

     

    3. 为每张图片设置图集名

     

     

    4. 点击Window\rightarrow2D\rightarrowSpritePacker ,即可看到打包好的图集

     

    5. 再次运行,Batches变为1

     

    打包后的图集Unity3D自动帮我们存至Libary/AtlasCache目录下,开发者无须对其进行特别处理。

     

     

    TexturePacker

    TexturePacker是通用的图集打包工具,支持多种平台的图集打包。由于具体用法网上介绍很多,上手不难,这里不再赘述。

    官网:https://www.codeandweb.com/texturepacker

     

    参考文献:

    http://www.xuanyusong.com/archives/3304

    https://blog.csdn.net/weixin_39706943/article/details/80522010

    展开全文
  • Unity游戏开发——UnityUGUI打包图集

    万次阅读 2017-09-14 22:13:08
    现在Unity中使用UGUI实现UI的越来越多,我们项目也才4.6.1升级到5.6.3对项目全面升级。5.x中UGUI已经非常成熟...习惯了NGUI的图集管理,在使用UGUI的时候也想把他们打包到一张图集上,查看了UGUI的打包方式,本以为和NG
  • Unity UGUI打包图集 SpritePacker

    千次阅读 2019-06-03 16:02:46
    UGUI打包图集有两种方式SpriteAtlas和SpritePacker,对于旧版的Unity,一般使用UnityPacker 首先我使用的是unity2018.4.0f,SpritePacker: 第一步,先打开Edit->Project Settings->Editor->...
  • Unity5 Sprite 图集打包 AssetBundle 更新探索
  • 3.新建应该是这样,其中的TightPacking是指图集拼接是否紧凑,勾选的话可能会出现image上出现该图周围的图片的情况,所以我一般选择去掉 然后将需要打包的图片资源的文件夹拖到这个地方,下面会出现一个按钮 ...
  • 在用UGUI时,我们需要将一个个小图打包图集,然后将图集一次性加载以内存换取图片读取效率,即减小Drawcall。 UGUI打包并使用图集有两种方法:一种是使用系统自带的打包工具SpritePacker,这种方法限制比较多;一...
  • 个人unity图集学习

    2020-12-03 17:23:58
    Unity图集相关信息,比较零散,先记录: 1.【unity游戏开发】图集整理策略 https://zhuanlan.zhihu.com/p/90494264 2.unity性能优化之图集打包——Sprite packer 和 Sprite Atlas 使用总结 ...
  • Unity 图集

    2017-12-27 11:17:21
    对于NGUI 的图集来说, 如果不是 刚好, 512*512, 1024*1024, 2048*2048 这种, 而是什么512*1024 之类的话, 在打包到手机上后, 即使是没有压缩的, 也会有一定程度的糊. 这种情况下, 应该把图集图片的导入格式改成...
  • Unity5.x虽然说打包时会处理好资源的依赖关系,但前提依然要我们设置好目标资源的AssetBundleName,如果设置资源AssetBundleName时忽略了资源之间的依赖关系,那么打包AssetBundle时,依然会产生重复打包的资源,...
  • Unity3D图集打包 老打包方法 新打包方法 加载图集 老图集加载处理 新图集加载处理 两种图集的区别
  • 现在的游戏跑起来会有接近130-170个左右的DrawCall,游戏运行起来明显感觉到卡,而经过一天的优化,DrawCall成功缩减到30-70个,这个效果是非常显著的,并且这个优化并没有通过将现有的资源打包图集来实现,图集都是...
  • 这时候我们往往是把需要的图片资源进行分类,然后按照需要打包成对应的图集。这样会方便管理和更新迭代,同时也减少了很多的性能开销。 假如你一个UI界面使用了10张不同的图片,那么加载这个界面的时候,就会同时对...
  • Unity2018打包图集(SpriteAtlas)以及使用

    万次阅读 2019-02-25 14:26:33
    //将编辑器中Edit-ProjectSettings-Edit-SpritePacker-Mode设置为AlwaysEnabled //Assets右键Create创建SpriteAtlas //将需要打包图集的图片文件夹选中,然后点击packpreview就OK
  • NGUI中使用图片前必须打包图集;而UGUI中可直接使用图片,发布时自动打包图集,也可手动打包图集,方法有两种。
  • UGUI 图集打包1. 为什么要进行图集打包2. NGUI和UGUI 图集的不同3. UGUI图集打包的两种方式【3.1】 sprite packer 旧版本的图集打包方式:sprite packer第一步:设置 Mode: Always Enabled ( Legacy Sprite Packer)...
  • Unity使用TexturePacker一键打包图集工具源代码 根据项目资源结构自动按文件划分图集,实现一键打包图集

空空如也

空空如也

1 2 3 4 5 ... 16
收藏数 318
精华内容 127
关键字:

unity图集打包