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

设计公司起名大全seo网页优化公司

设计公司起名大全,seo网页优化公司,如何用txt做网站时增加照片,wordpress主题安装不了本文主要解决在不打开unity的情况下搜索出无效引用的资源的方法 1. 概述 一般只要遍历一下目录里所有资源,判空一下就好了但有些情况下,不希望打开unity, 尤其希望是在资源整合时,想更快验证资源的合法性, 这对合并提交及出包验证时,都要较大的需求 2. 简单的验证方法 简单来… 本文主要解决在不打开unity的情况下搜索出无效引用的资源的方法 1. 概述 一般只要遍历一下目录里所有资源,判空一下就好了但有些情况下,不希望打开unity, 尤其希望是在资源整合时,想更快验证资源的合法性, 这对合并提交及出包验证时,都要较大的需求 2. 简单的验证方法 简单来说,要直接分析untiy的资源文件, 而且unity资源大部分是文本文件他们的文本格式大多是YAML, 如果直接使用PyYaml, 目前发现不行, 不过幸好, 格式相对简单, 通过分析属性的名称,再找到属性内容的方法,可以定位出Guid的值, 例如, 要查找XXX, YYY的值 import osGuidStr guid: GuidStrLen len(GuidStr)class CheckAssetInfo:def __init__(self, filePath):self.filePath filePathself.allGuids []self.isInit Falseself.checkValueNames [XXX, YYY]self.initData()def initData(self):if not self.isInit:self.allGuids self.get_file_to_guids(self.filePath) self.isInit Truedef get_all_guids(self):return self.allGuidsdef get_target_value(self, valueName, valueInfos):for i in range(len(valueInfos)):n, j valueInfos[i]if n valueName:return ireturn -1def get_file_to_guids(self, targetFilterPath):allGuids []with open(targetFilterPath, r) as assetFile:contentLines assetFile.readlines()valueInfos self.get_all_value_index(contentLines)for checkName in self.checkValueNames:valueIndex self.get_target_value(checkName, valueInfos)if valueIndex ! -1:valueName, stline valueInfos[valueIndex]valueName, endLine valueInfos[valueIndex1]allGuids.extend(self.get_value_guids(contentLines, stline, endLine))return allGuidsdef get_all_value_index(self, contentLines):valueInfos []lineCount len(contentLines)for i in range(lineCount):oneLine contentLines[i]findIndex oneLine.find(:)if findIndex ! -1:valueName oneLine[0:findIndex].strip()if valueName[0].isalpha():valueInfos.append((valueName, i))valueInfos.append((, lineCount))return valueInfosdef get_value_guids(self, contentLines, startLineIndex, endLineIndex):allGuids []for i in range(startLineIndex, endLineIndex):oneLine contentLines[i]guidIndex oneLine.find(GuidStr)if guidIndex ! -1:endIndex oneLine.find(, , guidIndex)allGuids.append(oneLine[guidIndex GuidStrLen: endIndex].strip())return allGuids获得引用的GUID后,还要知道都有什么GUID的资源, 这个比较简单,只要分析meta文件就好, 以下就简单粗暴地遍历资源目录下的meta文件即可 class MetaInfo: def __init__(self, filePath):self.filePath filePath; self.guid self.get_guid_from_file(filePath)def get_guid_from_file(self, filePath):with open(filePath, r) as metaFile:allLine metaFile.readlines()for oneLine in allLine:guidIndex oneLine.find(GuidStr)if guidIndex ! -1: return oneLine[guidIndex GuidStrLen:len(oneLine)].strip()return class VegChecker: def __init__(self, baseDir):self.checkAssetDir Assets/checkDir self.allAssetDir Assetsself.allAssetGuids {}def get_all_target_files(self, targetDir, extName):res []for root, dirs, files in os.walk(targetDir):for file in files:if os.path.splitext(file)[1] extName:file_path os.path.join(root, file)res.append(file_path)return resdef get_all_asset_guids(self):allMetaFiles self.get_all_veg_files(self.allAssetDir, .meta)for metaFile in allMetaFiles:metaInfo MetaInfo(metaFile)self.allAssetGuids[metaInfo.guid] Trueprint(Get total asset count meta count: str(len(self.allAssetGuids))) 获得要引用的GUID与所有的资源GUID,就很简单了,判断引用的GUID不在所有的资源GUID里就可以了 def check_all_asset(self):res Trueself.get_all_asset_guids()checkFiles self.get_all_target_files(self.checkVegDir, .asset)for oneFilter in checkFiles:assetInfo CheckAssetInfo(oneFilter)for guid in assetInfo.allGuids:if not self.allAssetGuids.get(guid, False):print(ffail to find guid {guid} in check asset {oneFilter})res Falsereturn res3.QA 可能直接分析文件, 而且要大范围遍历文件,会有效率问题, 但实质试验下来, 还是挺快的, 测试验证几十个文件引用, 遍历了4万多个文件, 在i9机器,大概就8秒, 这已经比直接打开unity快多了.当然会有分析错误的风险,但如果在一些相对明确的结构上, 也许是安全,但人工维护是免不了的
http://www.hkea.cn/news/14572877/

相关文章:

  • 秦皇岛抚宁区建设局网站中国公路建设招标网站
  • 达州城乡建设网站网站页面需求
  • 能看所有网站的浏览器wordpress可视化编辑教程
  • 成都市温江区建设局网站哈尔滨网络公司招聘信息
  • 贵阳seo网站管理wordpress 摘要长度
  • 昆明网站搭建彩页设计印刷公司
  • wordpress 微信连接数据库seo还有哪些方面的优化
  • 互联网招聘网站湘潭市建设路学校网站
  • 网站建设公司服务wordpress登录qq微信登录界面
  • 深圳哪里有网站建设做社交网站开发
  • 公司做网站的费用入账如何建立团购网站
  • 广告学专业优质的seo快速排名优化
  • 网站建设木马科技wordpress主题 粉色
  • 自己如何免费制作一个网站济宁市建设局网站
  • 网站首页结构网站开发需要用到哪些软件有哪些
  • 无锡装修公司做网站无法更新网站主页 dedecms
  • 石家庄站在哪个区怎么知道网站是php
  • 网站建设市场前景如何厦门门户网站建设
  • 上虞区驿亭镇新农村建设网站腾讯云wordpress插件下载失败
  • 网站建设视频注册网站有什么用
  • 南京做网站的有哪些手机怎么注册自己的网站
  • 网站自适应代码江苏建设监理协会官方网站
  • 制作个人网站怎么制作东莞做网站注意事项
  • 建筑公司网站大全漯河调整最新通告
  • 济源市工程建设监理所网站高端做网站公司
  • 做网站还有价值吗搜索引擎推广的网络营销渠道
  • 网址导航类网站怎么做广州有哪些区有几个区
  • 三维立体网站建设招聘网站模板页
  • 亚当学院网站视频建设教程网站制作器手机版
  • 网站搭建徐州百都网络搭建开发一个app要多久