CN108897567A - 基于Unity的软件加载文件的方法、装置、设备及存储介质 - Google Patents

基于Unity的软件加载文件的方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN108897567A
CN108897567A CN201810589546.3A CN201810589546A CN108897567A CN 108897567 A CN108897567 A CN 108897567A CN 201810589546 A CN201810589546 A CN 201810589546A CN 108897567 A CN108897567 A CN 108897567A
Authority
CN
China
Prior art keywords
data
unity
file
adaptation
software
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810589546.3A
Other languages
English (en)
Other versions
CN108897567B (zh
Inventor
郅晓勋
冯理
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Huya Information Technology Co Ltd
Original Assignee
Guangzhou Huya Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Huya Information Technology Co Ltd filed Critical Guangzhou Huya Information Technology Co Ltd
Priority to CN201810589546.3A priority Critical patent/CN108897567B/zh
Publication of CN108897567A publication Critical patent/CN108897567A/zh
Application granted granted Critical
Publication of CN108897567B publication Critical patent/CN108897567B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请提供基于Unity的软件加载文件的方法、装置、设备及存储介质,所述方法包括:调用自定义软件开发工具包获取需更新的资源文件,所述自定义软件开发工具包嵌入在所述基于Unity的软件中;通过所述自定义软件开发工具包将所述需更新的资源文件中的数据解析并重组成适配数据,所述适配数据适配Unity引擎;通过Unity引擎将所述适配数据进行数据渲染。旨在解决现有技术中当基于Unity的软件需要更新资源文件时,必须通过Unity软件重新构建新的基于Unity的软件版本或通过Unity构建新的AssetBundle资源包的技术问题。

Description

基于Unity的软件加载文件的方法、装置、设备及存储介质
技术领域
本申请涉及互联网领域,尤其涉及基于Unity的软件加载文件的方法、装置、设备及存储介质。
背景技术
Unity软件是一个综合型的游戏开发工具,并被越来越多公司选择作为3D游戏开发的引擎。现有技术中,通过Unity软件可以将若干资源文件构建成基于Unity的软件,例如游戏软件。但是基于Unity的软件在运行时,只能利用Unity引擎加载指定目录下或AssetBundle资源包中的资源文件,且上述指定目录无法被动态更改。当基于Unity的软件需要更新资源文件时,必须通过Unity软件重新构建新的基于unity的软件版本或通过Unity构建新的AssetBundle资源包,使得更新资源文件时,过程繁琐不便。
发明内容
为克服上述基于Unity的软件需要更新资源文件时,必须通过Unity软件重新构建新的基于unity的软件版本或通过Unity构建新的AssetBundle资源包,使得更新资源文件时,过程繁琐不便的问题,本申请提供了基于Unity的软件加载文件的方法、装置、设备及存储介质。具体如下:
根据本申请实施例的第一方面,提供一种基于Unity的软件加载资源文件的方法,所述方法包括:
调用自定义软件开发工具包获取需更新的资源文件,所述自定义软件开发工具包嵌入在所述基于Unity的软件中;
通过所述自定义软件开发工具包将所述需更新的资源文件中的数据解析并重组成适配数据,所述适配数据适配Unity引擎;
通过Unity引擎将所述适配数据进行数据渲染。
在一些例子中,所述需更新的资源文件中的数据为FBX数据,所述FBX数据通过调用FBX软件开发工具包加载所述需更新的资源文件解析得到。
在一些例子中,所述需更新的资源文件为自定义格式的静态模型文件,所述静态模型文件对应的静态模型包括至少两个部位;
所述自定义格式的存储结构包括:
至少两级树型存储结构;
所述树型存储结构的叶子结点存储描述部位的体素数据或标准模型文件数据,其中,所述叶子结点的上一级结点为所述叶子结点存储的数据所属的部位的索引,其中,所述标准模型文件包括:FBX格式文件、OBJ格式文件及DAE格式文件,所述体素数据包括:体素的位置信息和颜色信息。
在一些例子中,所述需更新的资源文件为自定义格式的静态模型文件;
所述通过所述自定义软件开发工具包将所述需更新的资源文件中的数据解析并重组成适配数据,包括:
通过自定义软件开发工具包根据叶子结点存储描述部位的体素数据,获得各体素的顶点信息,计算各体素各面的三角序列,获得各体素的三角形信息,获取各体素的顶点的UV值,根据贪婪算法将各体素进行合并,获得合并后的整体模型,根据所述各体素的顶点信息、各体素的三角形信息及各体素的顶点的UV值,解析得到合并后的整体模型的网格数据,将所述网格数据重组成适配数据。
在一些例子中,所述需更新的资源文件为动态模型文件数据,所述动态模型文件数据包括:静态模型文件数据、骨骼文件数据及动画文件数据。
在一些例子中,所述通过所述自定义软件开发工具包将所述需更新的资源文件中的数据解析并重组成适配数据,包括:
通过所述自定义软件开发工具包将所述静态模型文件数据解析及重组得到Unity适配的Unity Mesh数据和/或Unity Texture数据;
将所述骨骼文件数据解析及重组得到Unity适配的Unity Bone Weights数据、Unity Bones Transform数据和Unity Bind Pose数据;
将所述动画文件数据解析及重组得到Unity适配的Unity Animation数据。
在本申请的第二方面,提供一种基于Unity的软件加载资源文件的方法,所述方法由自定义软件开发工具包执行,所述自定义软件开发工具包嵌入在所述基于Unity的软件中,所述方法包括步骤:
获取需更新的资源文件;
将所述需更新的资源文件中的数据解析并重组成适配数据,所述适配数据适配Unity引擎所需的资源数据,并将所述适配数据发送给所述Unity引擎,以使所述Unity引擎将所述适配数据进行数据渲染。
在本申请的第三方面,提供一种使自定义格式的模型运行在基于Unity的软件中的方法,所述方法包括步骤:
模型编辑器根据用户的绘制指令,生成自定义格式的模型文件,并将所述自定义格式的模型文件发送给服务端,以使所述服务端存储所述自定义格式的模型文件;
基于Unity的软件调用自定义软件开发工具包从所述服务端获取所述存储的自定义格式的模型文件,所述自定义软件开发工具包嵌入在所述基于Unity的软件中;
基于Unity的软件通过所述自定义软件开发工具包将所述自定义格式的模型文件中的数据解析并重组成适配数据,并将所述适配数据发送给所述Unity引擎,所述适配数据适配Unity引擎;
基于Unity的软件通过Unity引擎将所述适配数据进行数据渲染。
在一些例子中,所述将所述自定义格式的模型文件发送给服务端,还包括:
将所述自定义格式的模型文件的共享数据发送到服务端,以使所述服务端根据所述共享数据确定可加载所述自定义格式的模型文件的基于Unity的软件;和/或
确定可使用所述自定义格式的模型文件的客户端。
在一些例子中,所述模型文件为静态模型文件,所述静态模型文件对应的静态模型包括至少两个部位;
所述自定义格式的存储结构包括:
至少两级树型存储结构;
所述树型存储结构的叶子结点存储描述部位的体素数据或标准模型文件数据,其中,所述叶子结点的上一级结点为所述叶子结点存储的数据所属的部位的索引。
在本申请的第四方面,一种基于Unity的软件加载资源文件的装置,包括:
获取模块,用于获取需更新的资源文件;
处理模块,用于将所述需更新的资源文件中的数据解析并重组成适配数据,所述适配数据适配Unity引擎所需的资源数据,并将所述适配数据发送给所述Unity引擎,以使所述Unity引擎将所述适配数据进行数据渲染。
在本申请的第五方面,提供一种基于Unity的软件加载资源文件的装置,包括:
Unity引擎,用于将所述适配数据进行数据渲染;
自定义软件开发工具包,用于被调用后,获取需更新的资源文件,所述自定义软件开发工具包嵌入在所述基于Unity的软件中,将所述需更新的资源文件中的数据解析并重组成适配数据,并将所述适配数据发送给所述Unity引擎,所述适配数据适配Unity引擎。
在本申请的第六方面,提供一种电子设备,包括:
处理器;用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行如上述第一至第三方面所述的任意一项方法所述的操作。
在本申请的第六方面,提供一种存储介质,其上存储有计算机程序,该程序被处理器执行如如上述第一至第三方面所述的任意一项方法所述的操作。
通过本申请提出的方案,在基于Unity的软件中嵌入自定义SDK,利用自定义SDK获取需更新资源文件,并对需更新资源文件的数据解析及重组获得适配数据,以供Unity引擎使用,使得在所述基于Unity的软件运行时,可以不经由Unity软件的处理,动态加载需更新的资源文件,且不具备Unity操作技能的美术设计人员可以在制作好资源文件后,自行通过基于Unity的软件加载所述需更新的资源文件,无需具备Unity操作技能的游戏开发人员的帮助,节省较多的人力资源,进而减少了基于Unity的软件的维护成本。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例实例性示出的现有技术中基于Unity的软件加载需更的资源文件的示意图;
图2为本申请实施例实例性提出的一种基于Unity的软件加载资源文件的方法的流程图;
图3为本申请实施例实例性示出的一种基于Unity的软件加载资源文件的方法示意图;
图4为本申请实施例实例性提出的一种基于Unity的软件加载静态模型文件的方法的流程图;
图5a为本申请实施例实例性示出的一种加载动态模型文件的方法的部分流程图;
图5b为本申请实施例实例性示出的一种自定义SDK解析并重组自定义格式的静态模型的方法的部分流程图;
图6为本申请实施例示例性示出的一种静态模型的自定义存储结构的示意图;
图7a为本申请实施例示例性示出的一种静态模型的示意图;
图7b为本申请实施例示例性示出的图7a所述静态模型对应的自定义存储结构的示意图;
图8为本申请实施例实例性示出的另一种自定义存储结构的示意图;
图9为本申请实施例实例性示出的另一种基于Unity的软件加载资源文件的方法的流程图;
图10为本申请实施例示例性示出的一种使自定义格式的模型运行在基于Unity的软件中的方法的流程图;
图11为本申请实施例实例性示出的一个模型编辑器的界面示意图;
图12a为本申请实施例实例性示出的另一个模型编辑器的界面示意图;
图12b为本申请实施例实例性示出的另一个模型编辑器的界面示意图;
图13为本申请一示例性实施例示出的一种电子设备的逻辑框图;
图14为本申请一示例性实施例示出的一种基于Unity的软件加载资源文件的装置的逻辑框图;
图15为本申请一示例性实施例示出的另一种基于Unity的软件加载资源文件的装置的逻辑框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
图1为本申请实施例实例性示出的现有技术中基于Unity的软件加载需更的资源文件的示意图。参照图1,当基于Unity的软件需要更新资源文件时,制作资源文件的设计人员将制作好的需更新的资源文件140交给软件开发人员,软件开发人员利用Unity软件130将需更新的资源文件140构建成新的AssetBundle资源包121,或创建新的基于Unity的软件版本100,且所述需更新的资源文件140被放置在新的软件安装包120的指定目录中,上述指定目录无法被动态更改。新的基于Unity的软件100的软件运行后,Unity引擎110可以从新的AssetBundle资源包121中加载需更新的资源文件140,或从新的软件包120的指定目录中加载需更新的资源文件140。
从上述加载需更新的资源文件的过程可以看出,现有技术存在如下问题:如需更新资源文件时,必须通过软件开发人员利用Unity软件创建新的AssetBundle资源包或发布新的软件版本,不仅使得操作过程繁琐,而且更新资源文件时必须依赖Unity软件,我们知道Unity软件是一款专业性较强的游戏开发工具,需经过较长时间的学习才能熟练使用,所以目前需更新资源文件时,必须由具备Unity软件操作能力的工作人员进行操作,大大增加了人力成本,进而增加了基于Unity软件的维护成本。
为了解决上述技术问题,本申请提出基于Unity的软件加载文件的方法、装置、设备及存储介质。参照图2,为本申请实施例实例性提出的一种基于Unity的软件加载资源文件的方法的流程图,在基于Unity的软件运行后,基于Unity的软件执行如下步骤:
步骤S210:调用自定义软件开发工具(Software Development Kit,SDK)包获取需更新的资源文件,所述自定义SDK嵌入在所述基于Unity的软件中;
步骤S220:通过所述自定义SDK将所述需更新的资源文件中的数据解析并重组成适配数据,所述适配数据适配Unity引擎;
步骤S230:通过Unity引擎将所述适配数据进行数据渲染。
本申请提出的基于Unity的软件可以运行在电子设备上,所述电子设备可以具有连网功能,电子设备可以包括:智能手机、平板电脑、笔记本电脑、台式电脑及服务端等;可以理解,本申请并不限制电子设备的类型。
本申请实施例中提出的“基于Unity的软件”指的是基于Unity软件开发的软件,所述软件基于Unity引擎工作,所述基于Unity的软件可以是游戏软件。
SDK通常可以被嵌入软件中,即将一些特定的功能封装在所述软件中,所述软件可以通过调用所述SDK提供的应用编程(Application Programming Interface,API)接口来直接调用所述SDK的功能。本申请实施例提出的自定义SDK可以在所述基于Unity的软件创建时,被嵌入在所述基于Unity的软件的安装包中,并可以在所述基于Unity的软件运行时被Unity引擎调用。
结合图3,为本申请实施例实例性示出的一种基于Unity的软件加载资源文件的方法示意图,基于Unity的软件300在运行后,若用户想要更新资源文件,则可以触发指定的用户指令,接收到所述用户指令后,Unity引擎310调用自定义SDK320从用户指定的查找的目录中查找资源文件,例如资源文件为需更新资源文件330,自定义SDK320获取所述需更新资源文件330,并将所述需更新的资源文件中的数据解析并重组成适配数据,并将所述适配数据发送给Unity引擎310,由于所述适配数据已并解析成适配Unity引擎的适配数据,所以Unity引擎310可以根据所述适配数据进行渲染。
通过本申请提出的方案,在基于Unity的软件中嵌入自定义SDK,利用自定义SDK获取需更新的资源文件,并对需更新资源文件的数据解析及重组获得适配数据,以供Unity引擎使用,使得在所述基于Unity的软件运行时,可以不经由Unity软件的处理,动态加载需更新的资源文件,且不具备Unity操作技能的美术设计人员可以在制作好资源文件后,自行通过基于Unity的软件加载所述需更新的资源文件,无需具备Unity操作技能的游戏开发人员的帮助,节省较多的人力资源,进而减少了基于Unity的软件的维护成本。
具体的,本申请实施例提出的适配数据可以包括:Unity Mesh数据、UnityTexture数据、Unity Bone Weights数据、Unity Bones Transform数据和Unity Bind Pose数据及Unity Animation数据。
本申请实施例提出的所述需更新的资源文件可以包括:模型文件,所述模型文件可以包括静态模型文件及动态模型文件等,所述动态模型文件数据包括:静态模型文件数据、骨骼文件数据及动画文件数据。
以下以资源文件为静态模型文件以及动态模型文件为例,说明自定义SDK将所述需更新的资源文件中的数据解析并重组成适配数据的过程。
1、所述需更新的资源文件为静态模型文件
一些例子中,静态模型可以用网格(Mesh)来描述,一般情况下可以为三角形网格。标准静态模型文件的格式可以包括:FBX格式、OBJ格式及DAE格式等主流三维模型的格式。针对所述静态模型文件的格式,可以参照图4所述的步骤加载需更新的资源文件。图4为本申请本申请实施例实例性提出的一种基于Unity的软件加载静态模型文件的方法的流程图,基于Unity的软件执行如下步骤:
步骤S410:调用自定义SDK获取需更新的静态模型文件,所述自定义SDK嵌入在所述基于Unity的软件中;
步骤S420:判断所述需更新的静态模型文件的格式;
步骤S430:若为FBX格式,则调用FBX SDK解析所述需更新的静态模型文件获得FBX的静态模型数据(步骤S440);
具体的,可以是自定义SDK将所述需更新的静态模型文件发送给Unity引擎,Unity引擎调用FBX SDK解析所述需更新的静态模型文件得到FBX的模型数据,需要说明的是:静态模型的FBX的静态模型数据可以包括:控制点(Control Points)及UV(贴图纹理坐标)等数据,需要说明的是,本申请实施例提出的FBX的静态模型数据属于FBX数据。
步骤S450:所述自定义SDK将所述需更新的资源文件中的数据解析并重组成适配数据,并将所述适配数据发送给所述Unity引擎,所述适配数据适配Unity引擎;
具体的,可以是自定义SDK将FBX的静态模型数据(包括:控制点(Control Points)及UV等数据)解析得到网格数据(包括Vertices(顶点)、Triangles(三角形)及UV等数据),接着将所述网格数据重组成适配数据,所述适配数据可以包括:Unity Mesh数据(包括Unity Mesh Vertices、Unity Mesh Triangles及Unity Mesh UV等)和/或Unity Texture数据,并将所述适配数据发送给所述Unity引擎。
步骤S460:Unity引擎获取所述适配数据后,根据所述适配数据进行数据渲染。
步骤S470:若为其他标准格式(非FBX格式,可以包括OBJ格式及DAE格式),则执行步骤S450及步骤S460;
若为其他格式,步骤S450具体为:自定义SDK将需更新的资源文件中的数据解析得到网格数据(包括Vertices、Triangles及UV等数据),接着将所述网格数据重组成适配数据(包括Unity Mesh Vertices、Unity Mesh Triangles及Unity Mesh UV等),并将所述适配数据发送给所述Unity引擎,所述需更新的资源文件中的数据为其他格式的需更新的资源文件对应存储的数据。
进一步,若所述需更新的静态模型文件还包括贴图文件,所述基于Unity的软件加载资源文件的方法还可以包括:自定SDK获取所述需更新的静态模型文件后,Unity引擎读取静态模型文件中的贴图数据,并通过调用Set Pixels32(Colors32[]colors)接口,动态创建Unity Texture。接着,Unity引擎可以利用自定义SDK重组得到的适配数据以及所述Unity Texture,创建Unity Skin Mesh Renderer;创建对象,添加蒙皮网格渲染器(UnitySkin Mesh Render)组件,使用Unity引擎渲染加载对象。
2、所述需更新的资源文件为动态模型文件
参照图5a,为本申请实施例实例性示出的一种加载动态模型文件的方法的部分流程图,基于Unity的软件执行如下步骤:
步骤S501:调用自定义SDK获取需更新的动态模型文件,所述自定义SDK嵌入在所述基于Unity的软件中;
步骤S502:判断所述需更新的动态模型文件的格式;
步骤S503:若为FBX格式,则调用FBX SDK解析所述需更新的动态模型文件获得FBX数据,其中所述FBX数据包括:FBX的静态模型数据、FBX的骨骼数据及FBX的动画数据(S504);
步骤S505:自定义SDK将所述静态模型数据解析并重组得到静态模型数据对应的第一适配数据(Unity适配的Unity Mesh数据);
具体的,若为FBX格式,可以是自定义SDK将FBX的静态模型数据(包括:控制点(Control Points)及UV等数据)解析得到网格数据(包括Vertices、Triangles及UV等数据),接着将网格数据重组成Unity适配的Unity Mesh数据(可以包括Unity MeshVertices、Unity Mesh Triangles及Unity Mesh UV等数据)。
步骤S506:Unity引擎解析贴图数据,动态创建Unity适配的Unity Texture数据;
步骤S507:Unity引擎根据所述静态模型对应的Unity适配的Unity Mesh数据和Unity Texture数据进行渲染得到静态模型;
步骤S508:自定义SDK将FBX的骨骼数据及FBX的动画数据进行解析和重组得到骨骼动画的第二适配数据;
具体的,可以是将所述FBX的骨骼数据进行解析和重组得到Unity适配的UnityBone Weights、Unity Bones Transform、Unity Bind Pose等第二适配数据;将所述FBX的动画数据进行解析和重组得到Unity适配的Unity Animation等第二适配数据。
步骤S509:Unity引擎根据所述静态模型及骨骼动画的第二适配数据渲染得到使静态模型运动的骨骼动画。
具体的,Unity引擎可以调用Animation组件,根据所述静态模型及骨骼动画的适配数据渲染得到骨骼动画。
步骤S510:若为其他标准格式,则接着执行步骤S505、步骤S506、步骤S507、步骤S508及步骤S509。
其中,步骤S505中,将上述动态模型文件中的静态模型数据解析成对应的第一适配数据;步骤S508中:可以是自定义SDK将动态模型文件中骨骼数据及动画数据进行解析和重组得到骨骼动画的第二适配数据。
在一些例子中,上述静态模型文件及动态模型文件中的静态模型还可以由自定义格式描述,所述自定义格式的静态模型可以全部由体素描述,或部分由体素描述,部分由标准静态模型文件描述。
在一些例子中,所述体素数据包括各体素的位置信息及颜色数据。
若需更新资源文件为自定义格式的静态模型文件时,可以参照如图4所述的步骤S410、S450及S460执行加载所述需更新资源文件。具体的,若静态模型全部由体素描述,步骤S450可以参照图5b所述的步骤执行。
参照图5b,为本申请实施例示例性示出的解析自定义格式的静态模型文件的方法的流程图,所述自定义格式的静态模型文件包括各体素的体素数据,所述体素数据可以包括位置信息和颜色信息,自定义SDK可以通过执行如下步骤:
S521:根据各体素的位置信息,获取各体素8个顶点的Vertices数据;
S522:计算各体素的六个面的三角序列,获得各体素的Triangles数据;
S523:计算各体素8个顶点的UV数据;
S524:根据贪婪算法将静态模型中的所有体素数据的面合并,获得整体的静态模型;
本步骤中,将一个个单独的体素合并成为一个整体的静态模型。
S525:根据所述各体素的Vertices、Triangles及UV数据,获得整体的静态模型的网格数据;
S526:将所述整体的静态模型的网格数据重组成适配数据。
在一些例子中,若自定义格式的静态模型部分由体素描述,部分由标准静态模型文件描述,步骤S450可以是:将体素数据执行图5b所述的步骤S521、S522及S523,接着根据贪婪算法将静态模型中的所有体素数据以及标准静态模型数据的面合并,获得整体的静态模型;根据所述各体素的Vertices、Triangles、UV数据,及标准静态模型数据,获得整体的静态模型的网格数据;将所述整体的静态模型的网格数据重组成适配数据。
在一些例子中,所述自定义SDK还根据各体素的颜色数据,动态创建Texture2D,获得贴图数据,Unity引擎读取所述贴图数据,并通过调用Set Pixels32(Colors32[]colors)接口,动态创建Unity Texture。接着,Unity引擎可以利用自定义SDK重组得到的适配数据以及所述Unity Texture,创建Unity Skin Mesh Renderer;创建对象,添加蒙皮网格渲染器(Unity Skin Mesh Render)组件,使用Unity引擎渲染加载对象。
当需更新资源文件为动态模型文件,且所述动态模型中的静态模型为自定义格式时,可以通过如图5a所述的步骤S501、S502、S505、S506、S507、S508及S509加载所述需更新资源文件,具体的,所述步骤S505可以参照图5b所述的步骤执行。
对所述自定义格式进行具体阐述,所述静态模型包括至少两个部位,所述自定义格式的存储结构包括:
至少两级树型存储结构;
所述树型存储结构的叶子结点存储描述部位的体素数据或标准模型文件数据,其中,所述叶子结点的上一级结点为所述叶子结点存储的数据所属的部位的索引。
在一个例子中,所述静态模型的全部部位由体素描述,参照图6,为本申请实施例示例性示出的一种静态模型的自定义存储结构示意图,所述静态模型包括部位1及部位2,所述静态模型的存储结构600包括:
至少两级树型存储结构;
其中,第一级存储结构包括根结点610,根结点610用于存储所述静态模型的索引;
第二级存储结构包括子结点621和子结点622,子结点621用于存储部位1的索引,子结点622用于存储部位2的索引;
第三级存储结构包括叶子结点631、叶子结点632、叶子结点633、叶子结点634及叶子结点635,所述叶子结点631、632及633的上一级结点为子结点621,叶子结点631、632及633存储的体素数据属于部位1,所述叶子结点631、632及633存储的体素数据可以用于描述部位1;所述叶子结点634及635的上一级结点为子结点622,叶子结点634及635存储的体素数据属于部位2。
在一些例子中,所述静态模型可以包括多级部位,例如,人体模型可以包括头、身体、上肢及下肢等部位,上肢又可以包括手臂及手等部位。具体的,以静态模型为人体体素模型为例,参照图7a,为本申请实施例示例性示出的一种静态模型的示意图。如图7a,所述人体体素模型700包括头部710、身体720、上肢730以及腿740等部位,上肢包括部位手臂731及手732,上述各部位被所属该部位的体素描述(组成),例如:体素1至体素4描述所述头部710。图7a所述的人体体素模型700的存储结构如图7b所示,四级树型存储结构的根结点750为所述人体体素模型的索引,所述根结点750的下一级子结点分别为存储所述头部索引的子结点760、存储身体索引的子结点770、存储上肢索引的子结点780及存储下肢索引的子结点790,所述子结点760的下一级子结点(叶子结点)存储了属于头部的体素的体素数据,例如:体素1至体素4描述所述头部710,那么子结点760的下一级子结点(叶子结点)存储了体素1至体素4的体素数据;子结点780的下一级子结点包括存储手索引的子结点781及存储手臂索引的子结点782,所述子结点781的下一结点存储属于手的体素的体素数据,所述子结点782存储属于手臂的体素的体素数据。
当然可以理解,本申请实施例提出的自定义存储结构不仅可以存储体素数据还可以存储标准模型文件数据。
在一些例子中,本申请实施例实例性示出的另一种自定义存储结构,所述存储结构包括:
至少两级树型存储结构;
所述树型存储结构的叶子结点存储描述部位的体素数据或标准模型文件数据,其中,所述叶子结点的上一级结点为所述叶子结点存储的数据所属的部位的索引,其中,至少存储一个叶子结点存储体素数据。
参照图8,为本申请实施例实例性示出的另一种存储结构的示意图,根结点610下一级子结点包括子结点621、子结点622及子结点623,子结点621及622及其子结点存储的数据可参照图6的描述,此处不再赘述,子结点623存储部位4的索引,子结点623的下一级叶子结点636用于存储属于部位4的标准模型文件数据,所述标准模型文件数据描述静态模型的一部位。当然在一些例子中,根据标准模型文件数据实际所属的部位,存储所述标准模型文件数据的叶子结点不限于位于第二级存储结构,例如,参照图8,若标准模型文件数据属于部位3,所述存储标准模型文件数据的叶子结点为子结点631的下一级叶子结点。
参照图9,为本申请实施例实例性示出的另一种基于Unity的软件加载资源文件的方法的流程图,所述方法由自定义软件开发工具包执行,所述自定义软件开发工具包嵌入在所述基于Unity的软件中,所述方法的部分步骤如下:
S910:获取需更新的资源文件;
S920:将所述需更新的资源文件中的数据解析并重组成适配数据,所述适配数据适配Unity引擎所需的资源数据,并将所述适配数据发送给所述Unity引擎,以使所述Unity引擎将所述适配数据进行数据渲染。
需要说明的是,上述图9中各步骤的具体实现过程可以参照上述图2所述方法所对应的实施例中的描述,在此不再赘述。
传统方案中,制作一款三维游戏大致需要以下两个过程:1、专业的美术人员利用专业模型编辑软件制作模型文件;2、专业的游戏开发人员利用专业的游戏制作工具,使得上述制作的模型在游戏的特定场景中出现。但是,如何使不具备任何专业技能的玩家制作自定义模型,并使所述在模型在游戏场景中出现,成为目前个性化游戏软件市场亟待解决的问题。
为了能是在基于Unity的软件中运行玩家制作自定义模型,在一些例子中,参照图10,为本申请实施例示例性示出的一种使自定义格式的模型运行在基于Unity的软件中的方法的流程图,部分步骤如下:
S1001:模型编辑器根据用户的绘制指令,生成自定义格式的模型文件。
具体的,在一些例子中,本步骤可以是:启动模型编辑器后,确定绘制的体素所属的部位;根据体素所属部位生成自定义格式的模型文件。
确定绘制的体素所属的部位的方法很多,如:基于用户的指令确定体素所属的部位,或根据预设的识别机制确定体素所属的部位。
若为基于用户的指令确定体素所属的部位,在某些例子中,可以是:用户选择某一部位后,直至用户改变所选部位前,用户在期间绘制的体素均属于该用户选择的部位。以一个具体的例子进行描述,参照图11,为本申请实施例实例性示出的一个模型编辑器的界面示意图,该界面1100包括供用户选择的区域1110以及模型绘制区域1120;用户可以在供用户选择的区域1110内选择将绘制的体素所属的部位,例如选择头部控件,则触发用户指令,用户在模型绘制区域1120绘制的体素均属于头部,图中头部1131包括的4块体素均在用户点击头部控件后绘制,若接着用户点击身体控件,则用户接下来在模型绘制区域1120绘制的体素均属于身体,图中身体1132包括的10块体素均在用户点击身体控件后绘制。
可以理解,在另外一些例子中,可以是用户先绘制体素,再设置所述绘制的体素所属的部位。所述设置的方式可以是右击需设置的体素弹出设置窗口进行设置,或拖选需设置体素弹出设置窗口进行设置,本申请实施例不限制所述设置的方式。
若根据预设的识别机制确定体素所属的部位,所述预设的识别机制可以是:通过体素的颜色值,确定体素所属的部位,例如预先规定白色为部位1,红色为部位2,则可以根据绘制的体素的颜色值确定绘制的体素所属的部位。在一些例子中,所述预设的识别机制还可以是图像识别,如根据图像识别算法确定出绘制的静态模型所属类别,如属于人物模型或动物模型,根据所属类别,确定所述静态模型包括的部位,再根据图像识别算法确定绘制的各体素所属的部位。
实际应用中,大多的模型素材为标准模型文件,为了减少用户的编辑难度。在一些例子中,模型编辑器运行后,用户可以通过选择现有的标准模型文件的方式获取标准模型文件,并确定所述标准模型文件所属部位。例如,用户制作一个地图模型时,背景可以选用已制作完成的标准模型文件,而背景上的前景人物可以用体素绘制。
S1002:模型编辑器将所述自定义格式的模型文件发送给服务端。
本步骤中,还可以将所述自定义格式的模型文件的共享数据发送到服务端,以使所述服务端根据所述共享数据确定可加载所述自定义格式的模型文件的基于Unity的软件,和/或确定可使用所述自定义格式的模型文件的用户。
具体的,参照图12a,为本申请实施例示例性示出的模型编辑器的界面示意图。用户绘制好模型后,可以选择上传服务端或保存,当用户点击上传服务端后,模型编辑器的界面1200可以弹出选择窗口1210,用于供用户选择该模型可以上传的基于Unity的软件,用户确定基于Unity的软件后,用户可以进一步选择该基于Unity的软件中哪些用户(客户端)可以使用该模型。根据上述共享数据,模型编辑器可以确定上传的服务端。参照图12b中,例如用户选择游戏1为上传的基于Unity的软件,并确认后,可以弹出窗口1220,以供用户输入游戏1中可以使用该模型的玩家,用户可根据自身需求,选择可以使用该模型的玩家(用户)。
S1003:服务端存储所述自定义格式的模型文件。
在一些例子中,服务端接收到所述自定义格式的模型文件及共享数据后,可以根据共享数据中的确定可使用所述自定义格式的模型文件的用户(客户端),在基于Unity的软件的客户端发起请求模型的指令时,确定该客户端可以选择的模型。
S1004:基于Unity的软件运行后,调用自定义软件开发工具包从所述服务端获取所述存储的自定义格式模型文件,所述自定义软件开发工具包嵌入在所述基于Unity的软件中。
S1005:通过所述自定义软件开发工具包将所述自定义模型文件中的数据解析并重组成适配数据,所述适配数据适配Unity引擎。
S1006:通过Unity引擎将所述适配数据进行数据渲染。
本申请实施例提出的方案使用户能够在基于Unity的软件中使用编辑的自定义格式的模型文件(定制模型),使得基于Unity的软件更加个性化。
与前述基于Unity的软件加载资源文件的方法的实施例相对应,本申请还提供了基于Unity的软件加载资源文件的装置的实施例。
本申请基于Unity的软件加载资源文件的装置的实施例可以应用在电子设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在电子设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图13所示,为本申请基于Unity的软件加载资源文件的装置所在电子设备的一种硬件结构图,除了图13所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常根据该基于Unity的软件加载资源文件的装置的实际功能,还可以包括其他硬件,对此不再赘述。请参考图13,本申请还公开了一种电子设备,包括:存储处理器可执行指令的存储器;其中,所述处理器耦合于所述存储器,用于读取所述存储器存储的程序指令,并作为响应,可以执行如上述图2、图4、图5a、图5b、图9及图10对应的任意一个实施例所述的操作。
参照图14,为本申请公开的一种基于Unity的软件加载资源文件的装置1400,包括:
获取模块1410,用于获取需更新的资源文件;
处理模块1420,用于将所述需更新的资源文件中的数据解析并重组成适配数据,所述适配数据适配Unity引擎所需的资源数据,并将所述适配数据发送给所述Unity引擎,以使所述Unity引擎将所述适配数据进行数据渲染。
参照图15,为本申请公开的一种基于Unity的软件加载资源文件的装置,包括:
Unity引擎1510,用于在基于Unity的软件运行后,调用自定义软件开发工具包,并在获取所述适配数据后,根据所述适配数据进行数据渲染;
自定义软件开发工具包1520,用于被调用后,获取需更新的资源文件,所述自定义软件开发工具包嵌入在所述基于Unity的软件中,将所述需更新的资源文件中的数据解析并重组成适配数据,并将所述适配数据发送给所述Unity引擎,所述适配数据适配Unity引擎。
本申请实施例可采用在一个或多个其中包含有程序代码的存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。计算机可用存储介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括但不限于:相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
本领域技术人员在考虑说明书及实践这里申请的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (14)

1.一种基于Unity的软件加载资源文件的方法,其特征在于,所述方法包括:
调用自定义软件开发工具包获取需更新的资源文件,所述自定义软件开发工具包嵌入在所述基于Unity的软件中;
通过所述自定义软件开发工具包将所述需更新的资源文件中的数据解析并重组成适配数据,所述适配数据适配Unity引擎;
通过Unity引擎将所述适配数据进行数据渲染。
2.根据权利要求1所述的方法,其特征在于,
所述需更新的资源文件中的数据为FBX数据,所述FBX数据通过调用FBX软件开发工具包加载所述需更新的资源文件解析得到。
3.根据权利要求1所述的方法,其特征在于,所述需更新的资源文件为自定义格式的静态模型文件,所述静态模型文件对应的静态模型包括至少两个部位;
所述自定义格式的存储结构包括:
至少两级树型存储结构;
所述树型存储结构的叶子结点存储描述部位的体素数据或标准模型文件数据,其中,所述叶子结点的上一级结点为所述叶子结点存储的数据所属的部位的索引,其中,所述标准模型文件包括:FBX格式文件、OBJ格式文件及DAE格式文件,所述体素数据包括:体素的位置信息和颜色信息。
4.根据权利要求3所述的方法,其特征在于,所述需更新的资源文件为自定义格式的静态模型文件;
所述通过所述自定义软件开发工具包将所述需更新的资源文件中的数据解析并重组成适配数据,包括:
通过自定义软件开发工具包根据叶子结点存储描述部位的体素数据,获得各体素的顶点信息;计算各体素各面的三角序列,获得各体素的三角形信息;获取各体素的顶点的UV值;根据贪婪算法将各体素进行合并,获得合并后的整体模型;根据所述各体素的顶点信息、各体素的三角形信息及各体素的顶点的UV值,解析得到合并后的整体模型的网格数据;将所述网格数据重组成适配数据。
5.根据权利要求1所述的方法,其特征在于,所述需更新的资源文件为动态模型文件数据,所述动态模型文件数据包括:静态模型文件数据、骨骼文件数据及动画文件数据。
6.根据权利要求5所述的方法,其特征在于,所述通过所述自定义软件开发工具包将所述需更新的资源文件中的数据解析并重组成适配数据,包括:
通过所述自定义软件开发工具包将所述静态模型文件数据解析及重组得到Unity适配的Unity Mesh数据和/或Unity Texture数据;
将所述骨骼文件数据解析及重组得到Unity适配的Unity Bone Weights数据、UnityBones Transform数据和Unity Bind Pose数据;
将所述动画文件数据解析及重组得到Unity适配的Unity Animation数据。
7.一种基于Unity的软件加载资源文件的方法,其特征在于,所述方法由自定义软件开发工具包执行,所述自定义软件开发工具包嵌入在所述基于Unity的软件中,所述方法包括步骤:
获取需更新的资源文件;
将所述需更新的资源文件中的数据解析并重组成适配数据,所述适配数据适配Unity引擎所需的资源数据,并将所述适配数据发送给所述Unity引擎,以使所述Unity引擎将所述适配数据进行数据渲染。
8.一种使自定义格式的模型运行在基于Unity的软件中的方法,其特征在于,所述方法包括步骤:
模型编辑器根据用户的绘制指令,生成自定义格式的模型文件,并将所述自定义格式的模型文件发送给服务端,以使所述服务端存储所述自定义格式的模型文件;
基于Unity的软件调用自定义软件开发工具包从所述服务端获取所述存储的自定义格式的模型文件,所述自定义软件开发工具包嵌入在所述基于Unity的软件中;
基于Unity的软件通过所述自定义软件开发工具包将所述自定义格式的模型文件中的数据解析并重组成适配数据,并将所述适配数据发送给所述Unity引擎,所述适配数据适配Unity引擎;
基于Unity的软件通过Unity引擎将所述适配数据进行数据渲染。
9.根据权利要求8所述的方法,其特征在于,所述将所述自定义格式的模型文件发送给服务端,还包括:
将所述自定义格式的模型文件的共享数据发送到服务端,以使所述服务端根据所述共享数据确定可加载所述自定义格式的模型文件的基于Unity的软件;和/或
确定可使用所述自定义格式的模型文件的客户端。
10.根据权利要求8所述的方法,其特征在于,所述模型文件为静态模型文件,所述静态模型文件对应的静态模型包括至少两个部位;
所述自定义格式的存储结构包括:
至少两级树型存储结构;
所述树型存储结构的叶子结点存储描述部位的体素数据或标准模型文件数据,其中,所述叶子结点的上一级结点为所述叶子结点存储的数据所属的部位的索引。
11.一种基于Unity的软件加载资源文件的装置,其特征在于,包括:
获取模块,用于获取需更新的资源文件;
处理模块,用于将所述需更新的资源文件中的数据解析并重组成适配数据,所述适配数据适配Unity引擎所需的资源数据,并将所述适配数据发送给所述Unity引擎,以使所述Unity引擎将所述适配数据进行数据渲染。
12.一种基于Unity的软件加载资源文件的装置,其特征在于,包括:
Unity引擎,用于将所述适配数据进行数据渲染;
自定义软件开发工具包,用于被调用后,获取需更新的资源文件,所述自定义软件开发工具包嵌入在所述基于Unity的软件中,将所述需更新的资源文件中的数据解析并重组成适配数据,并将所述适配数据发送给所述Unity引擎,所述适配数据适配Unity引擎。
13.一种电子设备,其特征在于,包括:
处理器;用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行如权利要求1至10任意一项方法所述的操作。
14.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行如权利要求1至10任意一项方法所述的操作。
CN201810589546.3A 2018-06-08 2018-06-08 基于Unity的软件加载文件的方法、装置、设备及存储介质 Active CN108897567B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810589546.3A CN108897567B (zh) 2018-06-08 2018-06-08 基于Unity的软件加载文件的方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810589546.3A CN108897567B (zh) 2018-06-08 2018-06-08 基于Unity的软件加载文件的方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN108897567A true CN108897567A (zh) 2018-11-27
CN108897567B CN108897567B (zh) 2021-11-23

Family

ID=64344465

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810589546.3A Active CN108897567B (zh) 2018-06-08 2018-06-08 基于Unity的软件加载文件的方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN108897567B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109671156A (zh) * 2018-12-27 2019-04-23 成都四方伟业软件股份有限公司 三维模型加载方法和装置
CN109683920A (zh) * 2018-12-25 2019-04-26 成都四方伟业软件股份有限公司 一种基于unity程序部署方法与系统
CN111064712A (zh) * 2019-11-29 2020-04-24 珠海金山网络游戏科技有限公司 一种游戏资源打包方法及系统
CN111061505A (zh) * 2019-11-29 2020-04-24 珠海金山网络游戏科技有限公司 基于机器学习的优化打ab包方法
CN111078271A (zh) * 2019-11-29 2020-04-28 珠海金山网络游戏科技有限公司 基于特征分类训练器的优化Unity打AB包的方法
WO2020125567A1 (zh) * 2018-12-21 2020-06-25 上海哔哩哔哩科技有限公司 一种动画自动生成方法及动画自动生成系统
CN111508062A (zh) * 2020-04-13 2020-08-07 苏州梦想人软件科技有限公司 一种Unity版本更新中一键升级模型的方法及装置
CN111684420A (zh) * 2019-06-12 2020-09-18 深圳市大疆创新科技有限公司 功能模块的调用方法、设备、计算机可读存储介质
CN112199126A (zh) * 2020-09-25 2021-01-08 北京商询科技有限公司 基于Unity引擎的动态加载方法、装置、计算机设备
CN113450452A (zh) * 2021-07-05 2021-09-28 网易(杭州)网络有限公司 三维模型文件的转换方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110092293A1 (en) * 2009-10-16 2011-04-21 Nathalie Beaudoin Intermediary module for gaming systems
WO2011114281A1 (en) * 2010-03-15 2011-09-22 Maxime Penson System and method for real time trading computer game
CN103914872A (zh) * 2014-03-07 2014-07-09 西北农林科技大学 一种基于简化模态分析法的树动画模拟方法
CN104391683A (zh) * 2014-08-28 2015-03-04 无锡梵天信息技术股份有限公司 一种基于3Dmax脚本导出三维软件中模型动画的方法及装置
CN107506517A (zh) * 2017-07-04 2017-12-22 网易(杭州)网络有限公司 建筑模型显示、数据处理方法、装置、介质、设备和系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110092293A1 (en) * 2009-10-16 2011-04-21 Nathalie Beaudoin Intermediary module for gaming systems
WO2011114281A1 (en) * 2010-03-15 2011-09-22 Maxime Penson System and method for real time trading computer game
CN103914872A (zh) * 2014-03-07 2014-07-09 西北农林科技大学 一种基于简化模态分析法的树动画模拟方法
CN104391683A (zh) * 2014-08-28 2015-03-04 无锡梵天信息技术股份有限公司 一种基于3Dmax脚本导出三维软件中模型动画的方法及装置
CN107506517A (zh) * 2017-07-04 2017-12-22 网易(杭州)网络有限公司 建筑模型显示、数据处理方法、装置、介质、设备和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
孙雪梦: "基于实时渲染引擎的动画创作研究", 《中国优秀硕士学位论文全文数据库 哲学与人文科学辑》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020125567A1 (zh) * 2018-12-21 2020-06-25 上海哔哩哔哩科技有限公司 一种动画自动生成方法及动画自动生成系统
CN109683920A (zh) * 2018-12-25 2019-04-26 成都四方伟业软件股份有限公司 一种基于unity程序部署方法与系统
CN109683920B (zh) * 2018-12-25 2022-08-16 成都四方伟业软件股份有限公司 一种基于unity程序部署方法与系统
CN109671156A (zh) * 2018-12-27 2019-04-23 成都四方伟业软件股份有限公司 三维模型加载方法和装置
CN111684420A (zh) * 2019-06-12 2020-09-18 深圳市大疆创新科技有限公司 功能模块的调用方法、设备、计算机可读存储介质
CN111064712A (zh) * 2019-11-29 2020-04-24 珠海金山网络游戏科技有限公司 一种游戏资源打包方法及系统
CN111061505A (zh) * 2019-11-29 2020-04-24 珠海金山网络游戏科技有限公司 基于机器学习的优化打ab包方法
CN111078271A (zh) * 2019-11-29 2020-04-28 珠海金山网络游戏科技有限公司 基于特征分类训练器的优化Unity打AB包的方法
CN111064712B (zh) * 2019-11-29 2022-03-18 珠海金山网络游戏科技有限公司 一种游戏资源打包方法及系统
CN111508062A (zh) * 2020-04-13 2020-08-07 苏州梦想人软件科技有限公司 一种Unity版本更新中一键升级模型的方法及装置
CN112199126A (zh) * 2020-09-25 2021-01-08 北京商询科技有限公司 基于Unity引擎的动态加载方法、装置、计算机设备
CN113450452A (zh) * 2021-07-05 2021-09-28 网易(杭州)网络有限公司 三维模型文件的转换方法和装置

Also Published As

Publication number Publication date
CN108897567B (zh) 2021-11-23

Similar Documents

Publication Publication Date Title
CN108897567A (zh) 基于Unity的软件加载文件的方法、装置、设备及存储介质
US20220080318A1 (en) Method and system of automatic animation generation
KR100928192B1 (ko) 내장형 디바이스에서의 3d 콘텐츠에 대한 오프라인 최적화파이프라인
CN105556569B (zh) 动画编辑
US20130278607A1 (en) Systems and Methods for Displaying Animations on a Mobile Device
CN110201396B (zh) 用于生成游戏编辑器和插件以及数据处理的方法及装置
KR20080018407A (ko) 3차원 캐릭터의 변형을 제공하는 캐릭터 변형 프로그램을기록한 컴퓨터 판독가능 기록매체
CN106528174B (zh) 基于cocos2dx的flash渲染方法和渲染引擎
US10880595B2 (en) Method and apparatus for adjusting virtual reality scene, and storage medium
CN109903365A (zh) 基于渲染树的渲染方法和渲染系统
CN113689534B (zh) 物理特效渲染方法、装置、计算机设备和存储介质
CN115115753A (zh) 动画视频处理方法、装置、设备及存储介质
CN116115995A (zh) 图像渲染处理方法、装置及电子设备
CN108986205B (zh) 一种绘制体素模型的方法、装置、设备和存储介质
CN107230244A (zh) 一种动画文件的生成方法和渲染系统
CN115167940A (zh) 3d文件加载方法及装置
CN115794063A (zh) 三维模型的处理方法、装置和电子设备
CN109035372B (zh) 编辑动态模型的方法、装置、设备及存储介质
KR20090000554A (ko) 정서-색채 테이블을 이용한 캐릭터 정서 변화 모델링 방법및 시스템
CN115170708B (zh) 3d图像实现方法及系统
CN115170707B (zh) 基于应用程序框架的3d图像实现系统及方法
Rininsland et al. D3. js: cutting-edge data visualization
CN113223127A (zh) 虚拟对象的表情生成方法、应用程序、设备及存储介质
CN116328296A (zh) 界面视图的生成方法、装置、存储介质及电子装置
CN115400425A (zh) 一种游戏副本场景的动态加载方法、装置及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant