一种基于3DMAX脚本模型导出的实现方法技术

技术编号:10560824 阅读:594 留言:0更新日期:2014-10-22 14:36
本发明专利技术公开了一种基于3DMAX脚本模型导出的实现方法,主要包括:获取场景模型相对于世界位置的矩阵信息和模型包围盒信息;基于场景模型相对于世界位置的矩阵信息和模型包围盒信息,把变换信息从OpenGL变换为DirectX矩阵,从脚本中导出三维模型供程序调用。本发明专利技术所述基于3DMAX脚本模型导出的实现方法,可以克服现有技术中成本高、开发效率低和适用范围小等缺陷,以实现成本低、开发效率高和适用范围广的优点。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种基于3DMAX脚本模型导出的实现方法,主要包括:获取场景模型相对于世界位置的矩阵信息和模型包围盒信息;基于场景模型相对于世界位置的矩阵信息和模型包围盒信息,把变换信息从OpenGL变换为DirectX矩阵,从脚本中导出三维模型供程序调用。本专利技术所述基于3DMAX脚本模型导出的实现方法,可以克服现有技术中成本高、开发效率低和适用范围小等缺陷,以实现成本低、开发效率高和适用范围广的优点。【专利说明】-种基于3DMAX脚本模型导出的实现方法
本专利技术涉及计算机
,具体地,涉及一种基于3DMAX脚本模型导出的实现 方法。
技术介绍
随着计算机的不断发展,带动了新兴的游戏产业从虚拟世界走向了真实的世界。 作为引擎技术的一项分支领域,脚本也是一个非常重要的模块,本专利技术提供了一种基于脚 本模型的导出方法,其主要依靠目前的三维软件制作的三维模型:例如:3DMAX,MAYA等,这 些模型中包含了模型的所有信息。对这些模型的变换需要一个复杂的变换。 目前游戏市场应用软件多样化,对三维模型的导出更是随着三维软件和第三方插 件的多样化而不同,目前大多数游戏市场是通过一些工具人员撰写本引擎的插件,或者是 3DMAX使用的PandaDXExport插件导出.X文件,然后将模型发布的时候,根据模型的数据转 化成XPL格式。 以上两种方式是一方面引擎开发周期长,对于人员流动大的公司,维护起来比较 困难另一方面是容易出现错误,需要反复的检查。 基于目前模型导出出现的各种问题,需要提供一种基于DirectX的3DMAX脚本模 型的导出方法,以便适应所有程序员开发普遍实用、而且导出模型方便,也可以大大节约成 本,提1?开发效率。 在实现本专利技术的过程中,专利技术人发现现有技术中至少存在成本高、开发效率低和 适用范围小等缺陷。
技术实现思路
本专利技术的目的在于,针对上述问题,提出一种基于3DMAX脚本模型导出的实现方 法,以实现成本低、开发效率高和适用范围广的优点。 为实现上述目的,本专利技术采用的技术方案是:一种基于3DMAX脚本模型导出的实 现方法,主要包括: a、 获取场景模型相对于世界位置的矩阵信息和模型包围盒信息; b、 基于场景模型相对于世界位置的矩阵信息和模型包围盒信息,把变换信息从OpenGL 变换为DirectX矩阵,从脚本中导出三维模型供程序调用。 进一步地,所述步骤a,具体包括: al、设置场景中三维软件的模型信息; a2、基于场景中三维软件的模型信息,获取该模型信息的接口; a3、基于该模型信息的接口,获取场景对象的矩阵信息。 进一步地,所述步骤al,具体包括: 将场景中的三维软件模型,按用途分为几何信息、材质信息以及蒙皮信息; 需要用脚本实现的模型,主要包括几何信息和材质信息以及蒙皮信息;其中: 几何信息包括顶点的位置信息、法线信息、颜色信息、Alpha信息、顶点受骨骼影响的权 重值,对于模型面的信息包括面的索引; 模型的材质信息包括模型面的U、V信息,以及每个面的贴图ID ; 蒙皮信息,通过该方法获得:获取模型的顶点数量,遍历模型中的每个顶点,依次获取 该顶点受那些权重值的影响。 进一步地,所述步骤a2,具体包括: 获取顶点的局部坐标位置信息,考虑模型中心点pivot位置,程序是返回顶点的局部 位置信息local vertex ; 通过 in coordsys local getvert obj i,求得 local vertex ; 依次通过函数GetVertexNormals获得顶点的法线信息接口,通过GetVertexColor 获得顶点的颜色信息接口,通过GetVertexAlpha获得顶点的Alpha信息,通过 getFaceRNormals获得面法线信息; 对于蒙皮信息:分别从受顶点权重影响的骨骼ID接口(GetVertexWeightBonelD),获 得骨骼数量的接口(GetNumberBones),获得骨骼名称的接口(GetBoneName),获得顶点权 重的接口(GetVertexWeight)获得相应信息。 进一步地,所述步骤a3,具体包括: 首先获取模型的世界位置的变换矩阵; 其次获得模型的世界矩阵信息; 然后获取模型的包围盒信息。 进一步地,所述步骤b,具体包括: 基于DirectX的API接口信息,将场景模型相对于世界位置的矩阵信息和模型包围盒 信息中返回的世界矩阵转化为DirectX接口下; 把三维软件中的模型所有信息导入任何游戏引擎中使用。 本专利技术各实施例的基于3DMAX脚本模型导出的实现方法,由于主要包括:获取场 景模型相对于世界位置的矩阵信息和模型包围盒信息;基于场景模型相对于世界位置的矩 阵信息和模型包围盒信息,把变换信息从OpenGL变换为DirectX矩阵,导出所需三维模型; 从而可以克服现有技术中成本高、开发效率低和适用范围小的缺陷,以实现成本低、开发效 率高和适用范围广的优点。 本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变 得显而易见,或者通过实施本专利技术而了解。 下面通过附图和实施例,对本专利技术的技术方案做进一步的详细描述。 【专利附图】【附图说明】 附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实 施例一起用于解释本专利技术,并不构成对本专利技术的限制。在附图中: 图1为本专利技术基于3DMAX脚本模型导出的实现方法中从脚本导出模型的界面示意图; 图2为本专利技术基于3DMAX脚本模型导出的实现方法中基于脚本导出模型的流程图。 【具体实施方式】 以下结合附图对本专利技术的优选实施例进行说明,应当理解,此处所描述的优选实 施例仅用于说明和解释本专利技术,并不用于限定本专利技术。 根据本专利技术实施例,如图1和图2所示,提供了一种基于3DMAX脚本模型导出的实 现方法,属于三维模型的导出方法即通过三维软件脚本导出的特别方法。 在虚拟的三维世界中,场景中我们所见所得的物件都可以视为"模型",而这些模 型在导出的时候能够保证完好无损的应用到游戏中,需要复杂的变换。首先了解一下所谓 的游戏中模型,虚拟的来模拟现实人物,场景,我们都称为模型;这些是计算机图形学的产 物,那么导出的一个完整的模型信息会携带网格蒙皮信息,骨骼信息和关键帧信息,蒙皮信 息是模型的多边形信息,这些模型信息一般都是顶点构成,这些顶点中包含了顶点位置,法 线信息和纹理材质信息以及哪些骨骼影响了该点和影响权重值等。骨骼信息就是这个模型 所有的骨骼组成一个骨骼树。关键帧信息包含了组成骨骼运动的关键帧序列,可以确定某 一个时刻每个骨骼的新的位置和朝向。导出模型之后需要记录模型中心点的坐标值,任何 将模型的中心点归零在导出。 第一:概括三维软件导出模型信息: 一个模型按用途可分为几何信息、材质信息以及蒙皮信息构成。 对于我们需要用脚本实现的模型主要包括几何信息和材质信息以及蒙皮信息 几何信息包括顶点的位置信息,法线信息,颜色信息,Alpha信息,顶点受骨骼影响的权 重值,对于模型面的信息包括面的索引。 模型的材质信息包括模型面的U、V信息,每个本文档来自技高网
...

【技术保护点】
一种基于3DMAX脚本模型导出的实现方法,其特征在于,主要包括:a、获取场景模型相对于世界位置的矩阵信息和模型包围盒信息;b、基于场景模型相对于世界位置的矩阵信息和模型包围盒信息,把变换信息从OpenGL变换为DirectX矩阵,从脚本中导出三维模型供程序调用。

【技术特征摘要】

【专利技术属性】
技术研发人员:张翼
申请(专利权)人:无锡梵天信息技术股份有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1