是什么
这系统到底是个啥
本系统主要用于自动监测与检测各类型资源是否正常及满足指定规范,并在第一时间把出现的问题输出到控制台与保存到文件,以供对应的负责人及时修正。
为什么
你可能经常遇到的问题
  • 资源名字或路径不规范?
  • 资源丢引用?
  • 特效丢材质或贴图?
  • 预设丢组件或脚本?
  • 动作控制器丢动画?
  • 等等很多各类美术程序资源引用的丢失都可检测到
  • 文件有冲突?
  • 典型的是meta冲突导致各种资源BUG
  • 组件属性设置有误?
  • 特效OrderInLayer不合适?
  • UILabel层级不对?
  • 用了不该用的组件或资源?
  • 用了系统的材质/贴图/Shader?
  • JSON填错导致格式挂掉了?
  • Shader用了不兼容或不合适的语句?
  • 资源性能数据不满足要求?
  • 突然发现模型骨骼/面数/顶点数超了?
  • 贴图大小或格式设置不对?
  • 等等
  • 策划测试发现资源有问题却不知该找谁?
  • More!还有很多功能已有或可以很方便地扩展。
你可能有类似的检测工具但是可能存在这样的问题
  • 你可能需要定时或按心情来手动检测项目中某个路径或某种资源有什么问题
  • 别的项目组想用你的类似工具,却要做很多的修改和合并。
  • 为了新增加一个新的检测类型,你可能得修改很多原来的检测代码。
  • 你可能得修改类文件来应付诸如“策划修改了某类资源的路径”或“策划增加了对某类资源的命名的检测”
  • 你可能重载了很多 OnPostprocessAllAssets ,导致资源导入很慢,或经常不知道什么地方修改了资源导入的设置。
怎么用
我怎么把它用到我的项目
  • 耦合性很低,直接拷贝对应的文件目录过来即可。
  • 你可能需要修改下配置表,以增减或修改一些功能或路径来适应你的项目
  • 默认会自动启用资源的自动检测,当然你也可以随时在编辑器界面或配置中关闭它
我怎么扩展它
已有类型的扩展你只要修改配置表即可,比如如果要增加"对某类新资源的命名规范或路径"的检测
不存在的类型的扩展,你需要这样做
  • 继承 AssetValidateBase
  • 重载 bool OnAssetTypeCheck(string assetPath) 以判断是否是你要检测的资源类型
  • 重载 bool OnAssetvalidate(string assetPath) 对资源进行你想要的检测
代码呢?
别说话,上代码
抱歉,处于各种原因,不能给大家放上完整的代码。但是我会说明原理和所有的核心技术点,如果你有任何问题,也可以给我留言咨询(QQ569491198),谢谢。
核心技术
还有吗
还有什么功能或技术吗
  • 确实有很多细节,不论是功能实现,还是技术细节,限于篇幅,只能粗略提下了。
  • 已实现且建议实现的功能包括但不限于:
  • 你得把一次检测或监测到的问题记录到文本,方便查阅和修正
  • 你得有个编辑器界面去很好地控制这个系统,包括但不限于控制整个系统及所有小校验器的开启和关闭。
  • 你得很好地设计你的系统,让每个问题都绑定给对应的负责人(比如业务开发程序/引擎开发程序/动作美术/场景美术/特效美术/剧情策划/系统策划等)
注意点
使用或制作这个系统要注意什么?
  • 需要注意,这个系统的核心是基于U3D资源库的文件的变动回调的,请尽量不要在系统中修改资源,否则可能跟你工程中其他对这个资源有修改的操作冲突,导致死循环。
  • 也请知悉,刚用这类工具时,可能会检测出很多资源问题,这代表着,你可能会频繁去找很多其他组员或其他组的成员的问题,请保证你比他们强壮...

Unity3D工程全资源自动检测系统的更多相关文章

  1. QT国际化示例, 检测系统语言,设置适合语言,按键切换显示语言

    1.效果如下图,开启就自动检测系统语言,选择系统语言显示, UI有控件设置,在中文和英文之间切换.. 2. 源码 dialog.h #ifndef DIALOG_H #define DIALOG_H ...

  2. Unity3D 创建动态的立方体图系统

    Unity3D 创建动态的立方体图系统 这一篇主要是利用上一篇的Shader,通过脚本来完成一个动态的立方体图变化系统. 准备工作如下: 创建一个新的场景.一个球体.提供给场景一个平行光,准备2个立方 ...

  3. 开源入侵检测系统OSSEC搭建之二:客户端安装

    上一篇文章中已经将OSSEC服务端的安装以及客户端的Key导出操作做了解说,接下来在另一台虚拟机中安装客户端,与安装服务端类似同样需要安装ossec,步骤如下. 一.下载ossec-hids-2.8. ...

  4. 开源入侵检测系统OSSEC搭建之一:服务端安装

    OSSEC是一款开源的多平台的入侵检测系统,可以运行于Windows, Linux, OpenBSD/FreeBSD, 以及 MacOS等操作系统中.主要功能有日志分析.完整性检查.rootkit检测 ...

  5. 基于DSP的疲劳驾驶检测系统的研究

    原地址:http://www.chinaaet.com/article/index.aspx?id=114534 关键词:疲劳检测DSP亮瞳效应PERCLOS 摘  要: 针对汽车驾驶员疲劳驾驶检测的 ...

  6. 谷歌发布基于机器学习的Android APP安全检测系统:Google Play Protect

    Google Play作为众所周知的在线应用市场,因为审查制度的松散,经常会有一些恶意软件伪装成其他应用混入其中.此前阿里聚安全小编就报道了2例关于恶意软件伪装在Google Play上的事件:< ...

  7. 吴恩达机器学习笔记54-开发与评价一个异常检测系统及其与监督学习的对比(Developing and Evaluating an Anomaly Detection System and the Comparison to Supervised Learning)

    一.开发与评价一个异常检测系统 异常检测算法是一个非监督学习算法,意味着我们无法根据结果变量

  8. 基于PySpark的网络服务异常检测系统 (四) Mysql与SparkSQL对接同步数据 kmeans算法计算预测异常

    基于Django Restframework和Spark的异常检测系统,数据库为MySQL.Redis, 消息队列为Celery,分析服务为Spark SQL和Spark Mllib,使用kmeans ...

  9. SNORT入侵检测系统

    SNORT入侵检测系统 YxWa · 2015/10/09 10:38 0x00 一条简单的规则 alert tcp 202.110.8.1 any -> 122.111.90.8 80 (ms ...

随机推荐

  1. entityFramework 中decimal精度缺失问题

    在entityFramework中,decimal精度默认为2位数,当要设置的精度大于2位并且数据库中设置的decimal精度大于2位时,则将数据保存在数据库中后两位的小数内容将强制为00 解决方案: ...

  2. sql行列转换PIVOT与unPIVOT

    基本语法 select * from Mould pivot ( count(ID)for ProductTypeCode in ( [FC], [RCU], [RCD] )) as PVT; wit ...

  3. 未能找到 CodeDom 提供程序类型“Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider,

    未能找到 CodeDom 提供程序类型“Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft ...

  4. Asp.Net WebApi服务的创建

    Web API一种REST架构风格的Web服务.所谓的REST架构与技术无关,而是面向资源的一种软件架构设计. WCF自3.5之后也提供了对REST风格的支持,但和WebAPI来比较显得较为笨重,We ...

  5. Math.min() / Math.max() 使用方法

    首先弄懂apply 和 call 都是js函数自带的方法.区别如下: apply和call的用法只有一个地方不一样,除此之外,其他地方基本一模一样 1. a.call(b,arg1,arg2…) 2. ...

  6. Kafka学习之路 (一)Kafka的简介

    一.简介 1.1 概述 Kafka是最初由Linkedin公司开发,是一个分布式.分区的.多副本的.多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/ng ...

  7. 【正则表达式】用js实现千位分隔符,怎么实现?

    (?=pattern)  正向预查,在任何匹配 pattern 的字符串开始处匹配查找字符串.这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用.例如,'Windows (?=95|98|NT| ...

  8. Docker技术入门与实战 第二版-学习笔记-8-网络功能network-2-相应配置

    1) 快速配置指南(详细使用下面会讲) 其中有些命令选项只有在 Docker 服务启动的时候才能配置,而且不能马上生效 下面2个命令选项既可以在启动服务时指定,也可以 Docker 容器启动(dock ...

  9. eclipse导出可执行jar包步骤

    按步骤图文说明 第一步:选择要导出的工程,右键[export] 第二步:双击Java文件夹下的[Runnable Jar File] 第三步:该步骤分4步走 3.1 从下拉框选择该jar的入口文件,即 ...

  10. PAT B1002 写出这个数

    读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值.这里保证n小于10100. 输出格式:在一行内输出n的各位数字之和的每 ...