基于Unity3D智能合并优化模型的装置
技术领域
本发明涉及计算机程序领域,特别涉及一种基于Unity3D智能合并优化模型的插件。
背景技术
Unity3D软件是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。Unity类似于Director,Blender game engine,Virtools或Torque Game Builder等利用交互的图型化开发环境为首要方式的软件。其编辑器运行在Windows和Mac OS X下,可发布游戏至Windows、Mac、Wii、iPhone、WebGL(需要HTML5)、Windows phone 8和Android平台。也可以利用Unity web player插件发布网页游戏,支持Mac和Windows的网页浏览。它的网页播放器也被Mac所支持。
目前,在使用Unity3D软件的时候,当使用的三维模型需要合并或者优化时,Unity3D软件并没有提供直接的处理方式,解决方案一般是使用者必须自行编写代码,再对三维模型文件进行处理。但是,自行编写代码来整理Unity3D软件中的三维模型会非常的耗费时间,而且需要反复的测试,增加人工和时间成本。
发明内容
本发明的目的在于提供一种基于Unity3D智能合并优化模型的插件,该插件无需安装可以直接使用,可以提高三维模型合并的效率。
为实现上述目的,本发明提供了一种基于Unity3D智能合并优化模型的插件,包括:规范化命名模块,其用来将选择需要合并的三维模型文件的子文件进行排查,并将所有三维模型文件的子文件名称规范处理;查看面数模块,其通过统计所有模型类文件的模型面数之和来计算当前选中的三维模型文件的体量;合并模型模块,如果当前选中的三维模型文件的体量符合Unity3D软件的合并要求,该合并模型模块用来将当前选中的三维模型文件合并成一个整体的模型文件;以及智能分组模块,如果当前选中的三维模型文件的体量不符合Unity3D软件的合并要求,该智能分组模块用来根据模型文件的大小和位置信息进行自动分组,使每组的文件体量都符合Unity3D软件的合并要求且用合并模型模块分别进行合并。
优选地,该插件还包括清除子物体模块,当三维模型文件已经合并完成后,清除子物体模块用来将合并前的三维模型文件全部删除。
优选地,该插件还包括空文件销毁模块,在排查所有三维模型文件的子文件名称时,该空文件销毁模块用来将空文件销毁掉。
与现有技术相比,本发明具有如下有益效果:
1.使用方便,把文件放在Unity3D软件对应的目录既可,无需安装。
2.大幅提升效率,使用本插件比手动去整理三维模型文件效率提升至少约600%(手动处理一个文件需要0.5-2个小时,使用插件需要约2-5分钟)。
3.贴合实际,本插件就是技术人员在实际开发工作中,总结实际情况而研发的,非常贴合在日常的工作中遇到的情况。
4.功能丰富,本插件除了提供了对三维模型的合并之外,还提供了使用者可能遇到的其他相关情况的多种技术支持,非常人性化,带来了极大工作便利。
附图说明
图1是根据本发明的基于Unity3D智能合并优化模型的插件的界面示意图;
图2是根据本发明的基于Unity3D智能合并优化模型的插件的操作流程图。
具体实施方式
下面结合附图,对本发明的具体实施方式进行详细描述,但应当理解本发明的保护范围并不受具体实施方式的限制。
除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成部分。
如图1和图2所示,根据本发明具体实施方式的一种基于Unity3D智能合并优化模型的插件,包括规范化命名模块1、查看面数模块2、合并模型模块3和智能分组模块4,其中规范化命名模块1用来将选择需要合并的三维模型文件的子文件进行排查,并将所有三维模型文件的子文件名称规范处理。查看面数模块2通过统计所有模型类文件的模型面数之和来计算当前选中的三维模型文件的体量。如果当前选中的三维模型文件的体量符合Unity3D软件的合并要求,合并模型模块3用来将当前选中的三维模型文件合并成一个整体的模型文件。如果当前选中的三维模型文件的体量不符合Unity3D软件的合并要求,智能分组模块4用来根据模型文件的大小和位置信息进行自动分组,使每组的文件体量都符合Unity3D软件的合并要求且用所述合并模型模块分别进行合并。
作为一种优选的实施例,该插件还包括清除子物体模块5,当三维模型文件已经合并完成后,清除子物体模块5用来将合并前的三维模型文件全部删除。
作为一种优选的实施例,该插件还包括空文件销毁模块6,在排查所有三维模型文件的子文件名称时,该空文件销毁模块用来将空文件销毁掉。
上述方案中,插件的各个模块设计成界面按钮样式,在具体操作过程中,点击相应按钮即可启动相应的模块进行工作。需要说明的是,本插件是对现有的Unity3D软件提供的基础功能进行整合,并在此之上做出延伸。该插件文件文件放在Unity3D软件对应的目录既可,无需安装。
结合图2,本实施例对该插件的具体工作流程详细说明:
编辑三维模型文件时,需要先选中需要处理的文件。点击“规范化命名”按钮。规范化命名程序根据选择的模型文件,排查所有的子文件,以及子文件的子文件,将不符合软件开发行业的通用命名规则的,或者奇异字符的文件,自动处理,规范其名称。同时,作为一种优选的实施方式,用空文件销毁模块用来把空的文件销毁掉,防止不必要的内存占用。
然后,选中需要合并的模型文件,点击“查看面数”按钮。查看面数程序根据选中的模型文件,遍历其下所包含的所有模型类的文件,统计它们的模型面数之和,从而来计算当前选中的模型文件的体量。
如果文件体量符合要求,便可以点击“合并模型”按钮。合并模型是整合了Unity3D软件底层提供的合并文件代码,实现将若干小模型文件,合并成一个整体的模型文件的功能。但是,软件对模型的体量有要求。如果体量大小符合软件要求,会直接合并成功,如果不符合要求,便需要继续处理。
如果文件体量不符合要求时,可以点击“智能分组”按钮。智能分组程序是专门编写的算法,可以根据模型文件的大小和位置信息,进行划分,将成千上万个子文件自动分成小组,使每个小组的文件体量,都符合软件的要求。使用者也可以自己设定每个小组的最大体量要求,来满足不同的情况。
分组之后,可以选中所有的小组,再次点击“合并模型”按钮,便可以顺利将零散的模型文件合并。此时的模型文件已经合并完成,但是原来的零散文件还在,需要将他们删除,如果逐一点击删除会非常费力。这时,可以点击“清除子物体”按钮,一键完成自动删除功能。
本插件经过上述一系列的操作,可以将一个复杂的、庞大的模型文件,合并整理,化零为整,将成千上万的零散文件,合并为统一的整体。从而,既节约了内存空间,又能够大幅的提高软件运行效率,给Unity3D软件的研发工作,带来了极大的帮助,具有很大推广意义。使用本插件比手动去整理三维模型文件效率提升至少约600%(手动处理一个文件需要0.5-2个小时,使用插件需要约2-5分钟)。本插件是技术人员在实际开发工作中,总结实际情况而研发的,非常贴合在日常的工作中遇到的情况。当然,除了提供对三维模型的合并之外,还提供了使用者可能遇到的其他相关情况的多种技术支持,非常人性化,带来了极大工作便利。
作为一种具体的应用领域,本插件可以应用在数字化电厂三维产品中,数字化电厂的三维产品,由大量的三维建模组成,有数以千万计甚至数以亿计的模型文件,体量庞大,功耗也大,对电脑的性能要求也很高。本插件可以为发电企业三维产品的研发提供技术帮助,大幅提高研发的工作效率,并降低软件的功耗。研发者可以使用本插件提供的功能,迅速的将大量三维模型文件优化处理,合并统一,从而减少文件的体积,提升软件的运行效率。
前述对本发明的具体示例性实施方案的描述是为了说明和例证的目的。这些描述并非想将本发明限定为所公开的精确形式,并且很显然,根据上述教导,可以进行很多改变和变化。对示例性实施例进行选择和描述的目的在于解释本发明的特定原理及其实际应用,从而使得本领域的技术人员能够实现并利用本发明的各种不同的示例性实施方案以及各种不同的选择和改变。本发明的范围意在由权利要求书及其等同形式所限定。