[发明专利]一种UnityNGUI控件锚点更新模式优化方法及装置有效
申请号: | 201910660280.1 | 申请日: | 2019-07-22 |
公开(公告)号: | CN110457054B | 公开(公告)日: | 2023-01-03 |
发明(设计)人: | 李星;张强;张彬凌;杨明邦 | 申请(专利权)人: | 珠海金山数字网络科技有限公司;广州西山居网络科技有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65 |
代理公司: | 广州嘉权专利商标事务所有限公司 44205 | 代理人: | 郑晨鸣 |
地址: | 519000 广东省珠海市高新区唐家湾镇前岛环路325号102室*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 unityngui 控件 更新 模式 优化 方法 装置 | ||
本发明涉及一种UnityNGUI控件锚点更新模式优化方法及装置,其中的方法包括以下步骤:A、遍历unityNGUI控件,查找Prefab类型的资源并将其进行实例化;B、获取各实例化对象的锚点更新模式,筛选锚点更新模式为OnUpdate的Prefab资源,记录其文件路径;C、进一步筛选锚点更新模式可修改的Prefab资源;D、将最终筛选出的Prefab资源的锚点更新模式修改为OnEnable模式。本发明通过扫描NGUI中UI的锚点更新模式,对非必须使用OnUpdate的锚点进行修改使其锚点更新模式为OnEnable,可以减少UIRect.Update函数的开销,提升游戏fps。
技术领域
本发明涉及一种UnityNGUI控件锚点更新模式优化方法及装置,属于手游优化领域。
背景技术
在游戏中,UI模块占据着非常大的比重,在使用Unity开发游戏的团队中使用NGUI开发UI的占据了绝大部分,而UI元素越多,则其消耗则会越大,NGUI默认的每个元素的锚点更新模式为每帧更新(OnUpdate),这样越多的UI元素,则其开销UIRect.Update的开销越大,为了减少UIRect.Update的开销,提升fps,需要修改UI控件的锚点更新模式,但是在unity编辑器中,要修改UI控件的锚点更新模式需要手动逐个修改,操作繁琐,浪费时间。
发明内容
本发明提供一种UnityNGUI控件锚点更新模式优化方法及装置,对所有UI prefab进行扫描,统计所有锚点模式为每帧更新的UI控件,并自动批量修改相应的锚点更新模式。
本发明的技术方案第一方面为一种UnityNGUI控件锚点更新模式优化方法,所述方法包括以下步骤:
A、遍历unityNGUI控件,查找Prefab类型的资源并将其进行实例化;
B、获取各实例化对象的锚点更新模式,筛选锚点更新模式为OnUpdate的Prefab资源,记录其文件路径;
C、进一步筛选锚点更新模式可修改的Prefab资源;
D、将最终筛选出的Prefab资源的锚点更新模式修改为OnEnable模式。
进一步,所述步骤A包括:定位unityNGUI控件的路径,获取该路径下的所有Prefab类型资源的文件路径;根据获取的Prefab资源的文件路径,使用AssetDatabase加载所有的Prefab资源并实例化。
进一步,所述步骤B包括:获取所有实例化对象的UIRect组件对象,得到UIRect集合;逐个扫描UIRect集合的每个UIRect组件对象,获取并判断其锚点更新模式是否为OnUpdate模式,若为OnUpdate模式,则记录该UIRect组件对象。
进一步,所述步骤C包括:获取记录的各UIRect组件对象的锚点更新模式,若其预设模式为OnUpdate且不允许修改,则从记录中删除该UIRect组件对象。
本发明的技术方案第二方面为一种UnityNGUI控件锚点更新模式优化装置,该装置包括:实例化模块,用于遍历unityNGUI控件,查找Prefab类型的资源并将其进行实例化;第一筛选模块,用于获取各实例化对象的锚点更新模式,筛选锚点更新模式为OnUpdate的Prefab资源,记录其文件路径;第二筛选模块,用于进一步筛选锚点更新模式可修改的Prefab资源;设置模块,用于将最终筛选出的Prefab资源的锚点更新模式修改为OnEnable模式。
进一步,所述实例化模块包括:路径获取模块,用于定位unityNGUI控件的路径,获取该路径下的所有Prefab类型资源的文件路径;资源实例化模块,用于根据获取的Prefab资源的文件路径,使用AssetDatabase加载所有的Prefab资源并实例化。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海金山数字网络科技有限公司;广州西山居网络科技有限公司,未经珠海金山数字网络科技有限公司;广州西山居网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910660280.1/2.html,转载请声明来源钻瓜专利网。