[发明专利]一种获取Unity3D资源引用关系的方法及系统在审
申请号: | 201911063866.6 | 申请日: | 2019-11-04 |
公开(公告)号: | CN111078309A | 公开(公告)日: | 2020-04-28 |
发明(设计)人: | 潘亚楠;陈凯武;李爱华 | 申请(专利权)人: | 珠海西山居移动游戏科技有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F9/50 |
代理公司: | 广州嘉权专利商标事务所有限公司 44205 | 代理人: | 郑晨鸣 |
地址: | 519000 广东省珠海市高新区唐*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 获取 unity3d 资源 引用 关系 方法 系统 | ||
1.一种获取Unity3D资源引用关系的方法,其特征在于,包括:
S100、打开项目文件,根据引擎系统提供的引用关系接口获取指定资源文件的与其他资源文件的直接依赖;
S200、根据该资源的直接依赖进行计算得到该资源的递归依赖;
S300、根据引擎系统提供的哈希接口计算该资源的哈希值,并将该资源的依赖关系和哈希值另存为可读文件;
S400、重复执行步骤S100到S300,直到获取项目文件中所有资源文件的依赖关系和哈希值;
S500、在一定周期内再次获取该项目文件中所有资源文件的哈希值,并打开可读文件获取资源的依赖关系和哈希值,与对应的资源文件的哈希值进行对比,若哈希值一致,则该资源缓存有效,依赖关系不变,若哈希值不一致,则通过步骤S100到S300重新获取该资源的依赖关系,同时更新到可读文件中,其中一定周期可自定义。
2.根据权利要求1所述的获取Unity3D资源引用关系的方法,其特征在于,所述引用关系接口为AssetDatabase.GetDependencies接口。
3.根据权利要求1所述的获取Unity3D资源引用关系的方法,其特征在于,所述哈希接口为AssetDatabase.GetAssetDependencyHash接口。
4.根据权利要求1所述的获取Unity3D资源引用关系的方法,其特征在于,所述可读文件为json文件。
5.根据权利要求1或4所述的获取Unity3D资源引用关系的方法,其特征在于,所述可读文件包括资源文件名称、该资源文件的依赖关系和哈希值。
6.根据权利要求1所述的获取Unity3D资源引用关系的方法,其特征在于,所述S100还包括设置缓存目录,用于存放步骤S300生成的可读文件和打包资源文件后的打包文件。
7.根据权利要求1所述的获取Unity3D资源引用关系的方法,其特征在于,还包括将更新后的可读文件后对应的资源文件进行打包处理,得到项目安装包。
8.一种获取Unity3D资源引用关系的系统,其特征在于,包括:
加载模块,用于加载引擎系统抛出的接口加载项目文件内全部的资源文件,获取依赖关系和哈希值;
计算模块,用于根据资源的直接依赖进行计算得到该资源的递归依赖;
信息保存模块,用于将获取的资源文件的依赖关系和哈希值另存为可读文件;
对比模块,用于将资源文件的哈希值与可读文件中保存的对应资源文件的哈希值进行对比,根据对比结果调用对应模块执行操作。
9.根据权利要求8所述的获取Unity3D资源引用关系的系统,其特征在于,所述加载模块还包括:
接口抛出子模块,用于引擎系统抛出不同的接口获取对应源文件的依赖关系和哈希值;
循环加载子模块,用于循环调用接口加载项目文件的资源文件直至整个项目文件中的资源文件被加载。
10.根据权利要求8所述的获取Unity3D资源引用关系的系统,其特征在于,所述对比模块还包括:
调用模块,用于根据对比结果调用加载模块执行操作;
周期模块,用于自定义周期并在一定周期内唤起调用模块调用加载模块执行操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海西山居移动游戏科技有限公司,未经珠海西山居移动游戏科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911063866.6/1.html,转载请声明来源钻瓜专利网。