一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于Unity的Laya资源导出方法及终端与流程

2022-03-16 00:27:50 来源:中国专利 TAG:

一种基于unity的laya资源导出方法及终端
技术领域
1.本发明涉及laya引擎开发制作技术领域,特别涉及一种基于unity的laya资源导出方法及终端。


背景技术:

2.在使用laya开发项目过程中,3d资源并不能直接制作并使用,需要通过现有的laya官方的unity插件(以下简称laya插件)进行导出,该laya插件需手动导入模型到unity,一次只能导出一个我们所需要的laya资源,在项目开发中后期,需要对laya资源进行批量调整修改或游戏换皮的情况,往往需要专人手动操作来解决问题,费时费力。


技术实现要素:

3.本发明所要解决的技术问题是:提供一种基于unity的laya资源导出方法及终端,以通过unity实现laya资源的批量导出。
4.为了解决上述技术问题,本发明采用的技术方案为:
5.一种基于unity的laya资源导出方法,包括步骤:
6.s1.获取预先设置的导入资源路径和导出资源路径;
7.s2.遍历所述导入资源路径下的所有unitypackage文件;
8.s3.加载所有所述unitypackage文件至unity,并在所述unity中逐一打开每一个所述unitypackage文件中的场景资源,调用laya插件对每一个所述场景资源进行格式转换,得到转换后的laya资源;
9.s4.将所述laya资源输出至所述导出资源路径。
10.为了解决上述技术问题,本发明采用的另一种技术方案为:
11.一种基于unity的laya资源导出终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
12.s1.获取预先设置的导入资源路径和导出资源路径;
13.s2.遍历所述导入资源路径下的所有unitypackage文件;
14.s3.加载所有所述unitypackage文件至unity,并在所述unity中逐一打开每一个所述unitypackage文件中的场景资源,调用laya插件对每一个所述场景资源进行格式转换,得到转换后的laya资源;
15.s4.将所述laya资源输出至所述导出资源路径。
16.本发明的有益效果在于:一种基于unity的laya资源导出方法及终端,服务端首先获取预先设置的导入资源路径和导出资源路径,遍历该导入资源路径下的所有unitypackage文件,加载所有unitypackage文件至unity,并在所述unity中逐一打开每一个所述unitypackage文件中的场景资源,调用laya插件对每一个场景资源进行格式转换,得到转换后的laya资源,最后将laya资源输出至所述导出资源路径。即本发明利用unity引擎提供的编辑模式下动态加载unitypackage功能,动态调用laya插件进行资源转换,当其
中一个unitypackage文件中的场景资源转换完毕之后,就打开下一个unitypackage文件进行资源转换,以进行资源的批量转换,实现了laya资源的批量导出,从而提高了开发效率和舒适度。
附图说明
17.图1为本发明实施例的一种基于unity的laya资源导出方法的主要流程图;
18.图2为本发明实施例的一种基于unity的laya资源导出方法的运行流程图;
19.图3为本发明实施例的一种基于unity的laya资源导出方法的显示效果图;
20.图4为本发明实施例的一种基于unity的laya资源导出终端的结构示意图;
21.标号说明:
22.1.一种基于unity的laya资源导出终端;2.存储器;3.处理器
具体实施方式
23.为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
24.如图1-图3所示,本发明提供一种基于unity的laya资源导出方法,包括步骤:
25.s1.获取预先设置的导入资源路径和导出资源路径;
26.s2.遍历所述导入资源路径下的所有unitypackage文件;
27.s3.加载所有所述unitypackage文件至unity,并在所述unity中逐一打开每一个所述unitypackage文件中的场景资源,调用laya插件对每一个所述场景资源进行格式转换,得到转换后的laya资源;
28.s4.将所述laya资源输出至所述导出资源路径。
29.从上述描述可知,本发明的有益效果在于:服务端获取预先设置的导入资源路径和导出资源路径,遍历导入资源路径下的所有unitypackage文件,并加载所有unitypackage文件至unity,并在所述unity中逐一打开每一个所述unitypackage文件中的场景资源,调用laya插件对每一个场景资源进行格式转换,得到转换后的laya资源进行打包,最后将所述laya资源输出至导出资源路径。由此,利用unity引擎提供的编辑模式下动态加载unitypackage功能,动态调用laya插件进行资源转换,当其中一个unitypackage文件中的场景资源转换完毕之后,就打开下一个unitypackage文件进行资源转换,以进行资源的批量转换,实现了laya资源的批量导出,从而提高了开发效率和舒适度。
30.进一步地,所述步骤s2之前还包括:
31.接收批量导入数据请求,将所述批量导入数据请求中包含的原始数据路径下的所有unitypackage文件批量导入至导入资源路径中。
32.由上述描述可知,一次性批量导入所有需要转换的数据,相较于现有手动单个导入模型到unity,效率更高。
33.进一步地,所述步骤s3具体为:
34.加载所有所述unitypackage文件至unity的project指定目录下,将project指定目录下的场景资源进行缓存,并在所述unity中逐一打开每一个所述unitypackage文件中的场景资源,调用laya插件对每一个所述场景资源进行格式转换,得到转换后的laya资源。
35.由上述描述可知,加载所有unitypackage文件至unity的project指定目录下,将该目录下的场景资源进行缓存,并逐个打开,调用laya插件对每个场景资源进行格式转换,以实现对场景资源的批量转换。
36.进一步地,所述格式转换包括:
37.获取场景节点,递归遍历节点树,获取材质数据,将所述材质数据转化至laya可读取的格式,并序列化输出至.lmat文件,通过meshfilter将.lmat文件转换生成.lm文件。
38.由上述描述可知,获取场景节点,递归遍历节点树的形式获取材质数据,有利于更加快速准确地找到需要的资源数据进行格式转换。
39.进一步地,所述步骤s4之后还包括步骤:
40.接收单个导出请求,将在所述导出资源路径下所选择的所述laya资源进行单独打包后导出;
41.接收批量打包请求,将在所述导出资源路径下的所有所述laya资源进行批量打包后输出。
42.由上述描述可知,用户可根据自己的需求,进行单个导出或是批量导出的操作,方便用户使用。
43.如图4所示,一种基于unity的laya资源导出终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
44.s1.获取预先设置的导入资源路径和导出资源路径;
45.s2.遍历所述导入资源路径下的所有unitypackage文件;
46.s3.加载所有所述unitypackage文件至unity,并在所述unity中逐一打开每一个所述unitypackage文件中的场景资源,调用laya插件对每一个所述场景资源进行格式转换,得到转换后的laya资源;
47.s4.将所述laya资源输出至所述导出资源路径。
48.从上述描述可知,本发明的有益效果在于:服务端获取预先设置的导入资源路径和导出资源路径,遍历导入资源路径下的所有unitypackage文件,并加载所有unitypackage文件至unity,并在所述unity中逐一打开每一个所述unitypackage文件中的场景资源,调用laya插件对每一个场景资源进行格式转换,得到转换后的laya资源进行打包,最后将所述laya资源输出至导出资源路径。由此,利用unity引擎提供的编辑模式下动态加载unitypackage功能,动态调用laya插件进行资源转换,当其中一个unitypackage文件中的场景资源转换完毕之后,就打开下一个unitypackage文件进行资源转换,以进行资源的批量转换,实现了laya资源的批量导出,从而提高了开发效率和舒适度。
49.进一步地,所述步骤s2之前还包括:
50.接收批量导入数据请求,将所述批量导入数据请求中包含的原始数据路径下的所有unitypackage文件批量导入至导入资源路径中。
51.由上述描述可知,一次性批量导入所有需要转换的数据,相较于现有手动单个导入模型到unity,效率更高。
52.进一步地,所述步骤s3具体为:
53.加载所有所述unitypackage文件至unity的project指定目录下,将project指定
目录下的场景资源进行缓存,并在所述unity中逐一打开每一个所述unitypackage文件中的场景资源,调用laya插件对每一个所述场景资源进行格式转换,得到转换后的laya资源。
54.由上述描述可知,加载所有所述unitypackage文件至unity的project指定目录下,将该目录下的场景资源进行缓存,并逐个打开,调用laya插件对每个所述场景资源进行格式转换,以实现对场景资源的批量转换。
55.进一步地,所述格式转换包括:
56.获取场景节点,递归遍历节点树,获取材质数据,将所述材质数据转化至laya可读取的格式,并序列化输出至.lmat文件,通过meshfilter将.lmat文件转换生成.lm文件。
57.由上述描述可知,获取场景节点,递归遍历节点树的形式获取材质数据,有利于更加快速准确地找到需要的资源数据进行格式转换。
58.进一步地,所述步骤s4之后还包括步骤:
59.接收单个导出请求,将在所述导出资源路径下所选择的所述laya资源进行单独打包后导出;
60.接收批量打包请求,将在所述导出资源路径下的所有所述laya资源进行批量打包后输出。
61.由上述描述可知,用户可根据自己的需求,进行单个导出或是批量导出的操作,方便用户使用。
62.请参照图1、2和3,本发明的实施例一为:
63.基于原生editor ui组件开发,提供unitypackage批量导入、单个导出和批量资源导出三个按钮,分别对应图3中的导入、导出和导出全部,用户通过操作按钮,实现资源导出等功能。
64.一种基于unity的laya资源导出方法,包括步骤:
65.s1.获取预先设置的导入资源路径和导出资源路径;
66.如图3所示,导入路径即对应导入资源路径,导出路径即对应导出资源路径。
67.s2.遍历所述导入资源路径下的所有unitypackage文件;
68.s3.加载所有所述unitypackage文件至unity,并在所述unity中逐一打开每一个所述unitypackage文件中的场景资源,调用laya插件对每一个所述场景资源进行格式转换,得到转换后的laya资源;
69.在本实施例中,步骤s3具体为:
70.加载用户预先设置的导入资源路径下的所有unitypackage文件至unity的project指定目录下,将project指定目录下的场景进行缓存,并在所述unity中逐一打开每一个所述unitypackage文件中的场景资源,调用laya插件对每一个场景资源进行格式转换,得到转换后的laya资源。其中,在转换完一个laya资源后打开project指定目录下另一个场景进行资源转换,直至所有资源转换成功,若转换过程中出现中断,则会记录中断文件。
71.其中,上述的格式转换具体为:逐个打开并进行资源转换,获取场景节点,递归遍历节点树,获取材质数据,将所述材质数据转化至laya可读取的格式,并序列化输出至.lmat文件,通过获取meshfilter,转换生成.lm文件,至于场景资源中的动画文件、模型文件等资源文件可以按照上述方法进行转换,以转换生成.lh文件、.lm文件和.lani文件等。
72.s4.将所述laya资源输出至所述导出资源路径。
73.所述步骤s4之后还包括:
74.接收单个导出请求,将在所述导出资源路径下所选择的所述laya资源进行单独打包后导出,接收批量打包请求,将在所述导出资源路径下的所有所述laya资源进行批量打包后输出。
75.即如图3所示,用户点击导出按钮,弹出导出资源路径的文件夹界面,用户在该界面选择需要单个导出的资源,进行单独打包后输出即可;若用户点击导出全部按钮,则将导出资源路径的所有laya资源进行批量打包后输出。
76.请参照图4、本发明的实施例二为:
77.一种基于unity的laya资源导出终端1,包括存储器2、处理器3及存储在存储器2上并可在处理器3上运行的计算机程序,所述处理器3执行所述计算机程序时实现上述实施例一中的步骤。
78.综上所述,本发明提供的一种基于unity的laya资源导出方法及终端,利用unity引擎提供的编辑模式下动态加载unitypackage功能,动态调用laya插件进行资源转换,当其中一个unitypackage文件中的场景资源转换完毕之后,就打开下一个unitypackage文件进行资源转换,以进行资源的批量转换,实现了laya资源的批量导出,从而提高了开发效率和舒适度。同时提供单个导出或批量打包导出两种导出方式,便于用户的使用。
79.以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献