当前位置: 首页 > news >正文

盐山网站建设广西网上办事大厅

盐山网站建设,广西网上办事大厅,2022做网站还能赚钱吗,网站备案花钱吗一、起因 一个工程,打包成webGL且压缩成zip文件后,接近400M,后来把大的精灵图片设置最大尺寸,降低大小后,再次发布,zip文件缩减到250M 二、如何一键获得工程里面的精灵图片信息 三、获取精灵图片信息 1、…

在这里插入图片描述

一、起因

一个工程,打包成webGL且压缩成zip文件后,接近400M,后来把大的精灵图片设置最大尺寸,降低大小后,再次发布,zip文件缩减到250M

二、如何一键获得工程里面的精灵图片信息

在这里插入图片描述

三、获取精灵图片信息

1、查找项目中的所有精灵图片

//查找工程文件中的所有精灵图片
string[] guids = AssetDatabase.FindAssets("t:Sprite");

2、获取精灵图片的资源位置

string assetPath = AssetDatabase.GUIDToAssetPath("精灵id");

3、获取精灵对象的Inspector参数信息

TextureImporter texImporter = AssetImporter.GetAtPath("精灵图片资源位置") as TextureImporter;
int maxSize = texImporter.maxTextureSize;

4、格式化字符串并保存到文件

下图为标题的信息,同理,每一张精灵图片的信息也是如此用【Tab】分割

var header = $"精灵名字\t位置\tMaxSize\tnative resolution\t大小\r";
...
...
var line = $"{sprite.name}\t{assetPath}\t{maxSize}\t{sprite.texture.height} * {sprite.texture.width}\t{sprite.texture.height * sprite.texture.width}\r";

调用 File.WriteAllText(fileName,content)保存到文件中

5、对于那些特别大的图,设置MaxSize进行限制

…手工或者用代码一键设置

四、附录代码

using System;
using UnityEngine;
using UnityEditor;
using System.Linq;
using System.IO;class Example : EditorWindow
{
#if UNITY_EDITOR[MenuItem("模型处理/输出工程文件中所有精灵图片的信息")]
#endifstatic void FindAllSprites(){//获取精灵信息var sprites = FindAllTextures();Debug.Log(sprites);//保存到文档var fileName = $"D:\\图片信息汇总{DateTime.Now.ToString().Replace('/','_').Replace(':','.')}.txt";Debug.Log($"{fileName}");File.WriteAllText(fileName,sprites);}/// <summary>/// 查找工程中所有的精灵对象,获取他们的分辨率信息/// ==========================================================输出内容格式化的string对象/// 精灵名字      | 位置 | MaxSize | tnative resolution | 大小/// ----------------------------------------------------------///  ...            ...     ...        ...                 .../// ==========================================================/// </summary>public static string FindAllTextures(){//查找工程文件中的所有精灵图片string[] guids = AssetDatabase.FindAssets("t:Sprite");Debug.Log($"Found {guids.Length} sprite assets.");var header = $"精灵名字\t位置\tMaxSize\tnative resolution\t大小\r";var body = "";foreach (string guid in guids){string assetPath = AssetDatabase.GUIDToAssetPath(guid);Sprite sprite = AssetDatabase.LoadAssetAtPath<Sprite>(assetPath);TextureImporter texImporter = AssetImporter.GetAtPath(assetPath) as TextureImporter;int maxSize = texImporter.maxTextureSize;//Debug.Log($"Sprite: {sprite.name}, Path: {assetPath}, MaxSize: {maxSize},native resolution:{sprite.texture.height} * {sprite.texture.width}");var line = $"{sprite.name}\t{assetPath}\t{maxSize}\t{sprite.texture.height} * {sprite.texture.width}\t{sprite.texture.height * sprite.texture.width}\r";body = body + line;}return $"{header}\r{body}";}
}

五、抛砖引玉

精力充沛的话,你也可以写一个功能,把影响build后打包体积的各种东西都统计一遍,然后对症下药,比如scene文件,fbx,prefab资源等等。

http://www.dtcms.com/a/490007.html

相关文章:

  • 郑州高端网站制作团队大连本地网
  • Linux网络的应用层自定义协议
  • leetcode 2598 执行操作后的最大MEX
  • FFmpeg 基本API avio_read函数内部调用流程分析
  • 【计算机网络】HTTP协议核心知识梳理
  • 基于 MediaMTX 的微信小程序 Web 实时音视频实操方案
  • 《UDP网络编程完全指南:从套接字到高并发聊天室实战》
  • 关于 云服务器WindowsServer2016双击无法运行可执行程序 的解决方法
  • LeetCode每日一题——在区间范围内统计奇数数目
  • Linux内核架构浅谈43-Linux slab分配器:小内存块分配与内核对象缓存机制
  • 最好的免费发布网站wordpress 文章二维码
  • Spring Boot 3零基础教程,Spring Boot 日志格式,笔记18
  • mybatis-plus分页插件使用
  • 福建住房和城乡建设网站网站做提示框
  • 李宏毅机器学习笔记24
  • Leetcode每日一练--28
  • Vue Router 路由元信息(meta)详解
  • 列表标签之无序标签(本文为个人学习笔记,内容整理自哔哩哔哩UP主【非学者勿扰】的公开课程。 > 所有知识点归属原作者,仅作非商业用途分享)
  • sk13.【scikit-learn基础】-- 自定义模型与功能
  • (Spring)Spring Boot 中 @Valid 与全局异常处理器的联系详解
  • 数据库数据类型,数据值类型,字符串类型,日期类型详解
  • 怎么写网站规划方案买链接做网站 利润高吗
  • SAP MM物料主数据锁定及解锁接口分享
  • [FSCalendar] 可定制的iOS日历组件 | docs | Interface Builder
  • 中兴B860AV5.1-M2/B860AV5.2M_安卓9_S905L3SB_支持外置WIFI_线刷固件包
  • AI 模型部署体系全景:从 PyTorch 到 RKNN 的嵌入式类比解析
  • 全球汽车紧固件产业进入关键转型期,中国供应链加速融入世界市场
  • 17网站一起做网店下载自动发卡网站建设
  • PHP 类型比较
  • oracle:To_char