CN108628945B - 一种将fbx模型文件自动转换为fbs模型文件的方法 - Google Patents
一种将fbx模型文件自动转换为fbs模型文件的方法 Download PDFInfo
- Publication number
- CN108628945B CN108628945B CN201810274512.5A CN201810274512A CN108628945B CN 108628945 B CN108628945 B CN 108628945B CN 201810274512 A CN201810274512 A CN 201810274512A CN 108628945 B CN108628945 B CN 108628945B
- Authority
- CN
- China
- Prior art keywords
- fbx
- model file
- fbs
- model
- texture
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
一种将fbx模型文件自动转换为fbs模型文件的方法,通过数据解析、几何信息处理、纹理及贴图处理、fbs三维模型格式输出、材质库输出等步骤,将fbx模型文件转换成fbs模型文件。通过采用本发明的方法,可以将Autodesk平台上的fbx文件直接转换成fbx三维模型格式,进行快速灵活的的编辑和应用,增强了模型转换效果和重复利用率,提高了工作效率,降低设计成本。
Description
技术领域
本发明适用于计算机图形学技术领域,具体涉及将AUTODESK系列平台设计生产的fbx三维模型转换为fbs三维模型的方法。
背景技术
当前在三维模型设计领域,不同的设计平台所生产的三维设计模型成果通用性较差,同一平台基本不支持其他平台所生产的成果,即使有部分的格式支持人工转换,但转换后模型效果也大打折扣,阻碍了三维设计成果在不同平台中的重复利用,降低了工作效率,增加了设计成本。
Autodesk公司系列三维设计软件所生产的fbx三维模型格式是业界较为普遍的一种设计模型格式,在实际生产工作中,往往需要将其放置于指定的三维设计平台中进行展示和操作,另一方面,fbs三维模型格式作为另一种较为灵活,可扩展的三维模型格式在生产当中也有很好应用性,如何填补现有的技术空白,将fbx三维模型自动转换为fbs三维模型是三维模型设计技术领域亟待解决的问题。
发明内容
为了解决上述问题,本发明提供一种将fbx模型文件自动转换为fbs模型文件的方法,其所述将将fbx模型文件自动转换为fbs模型文件的将fbx 模型文件自动转换为fbs模型文件的方法包括如下步骤:
S1、对fbx模型文件进行数据解析,加载fbx SDK动态链接库,遍历fbx 三维模型,获取模型各实体几何信息、纹理及贴图;
S2、对fbx模型文件进行几何信息处理,遍历所述步骤S1所获取到的实体几何信息,将该实体几何信息按照fbs三维模型格式的要求进行处理并创建实体索引,得到符合fbs三维模型格式的实体数据;
S3、对fbx模型文件进行纹理及贴图信息处理,对所述步骤S1所获取的纹理及贴图进行处理,读取模型材质信息并得到符合fbs三维模型格式的材质、纹理及贴图;
S4、fbs三维模型格式输出,将经过所述步骤S2所处理得到的符合fbs 三维模型格式的实体数据按照步骤S2创建的实体索引,写入fbs三维模型文件中;
S5、材质库输出,将经所述步骤S3所处理得到的符合fbs三维模型格式的材质、纹理及贴图根据步骤S2创建的实体索引写入fbs三维模型文件中。
所述步骤S1所述的几何信息包括fbx三维模型中每一个模型实体的顶点、线、面和法线的信息;所述步骤S1所述的纹理及贴图信息包括fbx三维模型中每一个模型实体所涉及的表面贴图和颜色设置。
所述步骤S2中所述的对fbx模型文件进行几何信息处理包括对顶点的处理和法线的处理,且对顶点和法线均要进行坐标轴转换处理。所述对顶点的处理是直接读取几何信息的几何转换矩阵和全局转换矩阵,并对所有顶点进行坐标变换,得到全局坐标系下的顶点坐标值。
所述对fbx模型文件进行纹理及贴图信息处理中,根据fbx三维模型添加材质的时候是以体为单位添加而不是面的特点,在读取材质的时以一个三维实体对应一种材质,进而建立三维实体与材质之间的关联的方式进行纹理及贴图信息处理。
所述对fbx模型文件进行纹理及贴图处理包括两个步骤:第一步是提取纹理及贴图,fbx文件中包含的纹理及贴图存储在fbxsurfaceMaterial类,通过遍历材质提取fbx文件中包含的纹理及贴图存放地址,然后读取地址进行提取纹理贴图;第二步是纹理及贴图处理,纹理贴图根据其是否具有alpha 通道来转换为jpg或者png格式图片。
所述步骤S5中材质库输出,根据fbs三维模型材质文件保存在模型文件夹下由模型文件中的索引调用,而fbx三维模型所存储的材质库是不重复的特点,将fbx模型文件的纹理及贴图逐个转换为JPG或png格式图片输出,并复制到fbs三维模型格式文件夹下。
将所有经过所述步骤S2处理的几何信息读取形成一个包含顶点位置、顶点法线、顶点切线、顶点uv、顶点color信息的列表,遍历列表将几何信息输出到fbs的mesh部分。
所述步骤S3中对fbx模型文件进行纹理及贴图信息处理,为每个材质或纹理都创建了全局唯一id,避免材质重复。
通过采用本发明的方法,可以将Autodesk平台上的fbx文件直接转换成fbs 三维模型格式,进行快速灵活的的编辑和应用。
具体实施方式
为了更好的理解本发明,下面详细说明本发明的方法。
一种将fbx模型文件自动转换为fbs模型文件的方法,包括以下步骤:
S1、数据解析:加载fbx SDK动态链接库,遍历fbx三维模型,获取模型各实体几何信息、纹理及贴图;
S2、几何信息处理:遍历步骤S1所获取到的实体几何信息,按照fbs 三维模型格式的要求进行处理并创建实体索引,得到符合fbs三维模型格式的实体数据;
S3、纹理及贴图处理:对步骤S1所获取的纹理及贴图进行处理,得到符合fbs三维模型格式的材质、纹理及贴图;
S4、fbs三维模型格式输出:将经步骤S2所处理得到的符合fbs三维模型格式的实体数据按照步骤S2创建的实体索引,写入fbs三维模型文件中;
S5、材质库输出:将经步骤S3所处理得到的符合fbs三维模型格式的材质、纹理及贴图根据步骤S2中创建的实体索引写入fbs三维模型文件中,即可。
上述技术方案中,进一步优选的是步骤S1所述的几何信息包括fbx三维模型中每一个模型实体的顶点、线、面和法线的信息。
进一步,优选的是步骤S1所述的纹理及贴图信息包括每一个模型实体所涉及的表面贴图和颜色设置。
进一步,优选的是步骤S2所述的几何信息处理包括顶点的处理和法线的处理。
进一步,优选的是步骤S2所述几何信息处理过程中,对顶点和法线均要进行坐标轴转换处理。
进一步,优选的是步骤S2所述的顶点处理是直接读取几何信息的几何转换矩阵和全局转换矩阵,并对所有顶点进行坐标变换,得到全局坐标系下的顶点坐标值。
步骤S3所述的纹理及贴图处理中,fbx三维模型添加材质的时候是以体为单位添加而不是面,因此在读取材质的时候也是一个三维实体对应一种材质,进而建立三维实体与材质之间的关联。
步骤S3所述的纹理及贴图处理过程中,由于fbx三维模型中为实体添加的材质绝大部分是来自fbx自身的材质库,fbx材质库中包含的贴图常用来表示材质的纹理信息,此次转换程序只能读取到fbx材质库中包含的贴图,提取材质属性的同时可以提取表示该材质纹理的贴图。
进一步,优选的是步骤S5材质库输出时,由于fbs三维模型材质文件保存在模型文件夹下,由模型文件中的索引调用,而fbx三维模型所存储的材质库是不重复的,因此,只需将纹理及贴图逐个转换为JPG或png格式图片输出,并复制到fbs三维模型格式文件夹下。
转换后的模型文件,解析三角形网格,读取每个网格所包含的顶点以及顶点法线;根据每个实体包含的网格,计算其顶点索引、顶点法线索引。
其中,顶点的处理是直接读取几何信息的几何转换矩阵和全局转换矩阵,并对所有顶点进行坐标变换,得到全局坐标系下的顶点坐标值。由于fbx 三维模型格式可能是z-up坐标系,而fbs三维模型格式是y-up坐标系,需要对顶点进行坐标轴转换。
针对法线的处理,由于fbx三维模型格式可能是z-up坐标系,而fbs三维模型格式是y-up坐标系,需要对法线坐标轴进行变换处理。
针对纹理及贴图的处理是对步骤S1所获取的纹理及贴图信息进行处理,得到符合fbs三维模型格式的纹理及贴图,包括两个步骤:第一,提取纹理及贴图,fbx文件中包含的纹理及贴图存储在fbxsurfaceMaterial类,可以通过遍历材质提取fbx文件中包含的纹理及贴图存放地址,然后读取地址进行提取纹理贴图;第二,纹理贴图根据其是否具有alpha通道来转换为jpg或者png格式图片。
输出几何信息方式是将所有经过步骤S2处理的几何信息读取形成一个列表,遍历列表将几何信息输出到fbs的mesh部分,列表信息包括顶点位置、顶点法线、顶点切线、顶点uv、顶点color。
为了避免材质及纹理重复,为每个材质或纹理都创建了全局唯一id。
通过采用本发明的方法,可以将Autodesk平台上的fbx文件直接转换成 fbx三维模型格式,进行快速灵活的的编辑和应用,增强了模型转换效果和重复利用率,提高了工作效率,降低设计成本。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (9)
1.一种将fbx模型文件自动转换为fbs模型文件的方法,其特征在于,所述将fbx模型文件自动转换为fbs模型文件的将fbx模型文件自动转换为fbs模型文件的方法包括如下步骤:
S1、对fbx模型文件进行数据解析,加载fbx SDK动态链接库,遍历fbx三维模型,获取模型各实体几何信息、纹理及贴图;
S2、对fbx模型文件进行几何信息处理,遍历所述步骤S1所获取到的实体几何信息,将该实体几何信息按照fbs三维模型格式的要求进行处理并创建实体索引,得到符合fbs三维模型格式的实体数据;
S3、对fbx模型文件进行纹理及贴图信息处理,对所述步骤S1所获取的纹理及贴图进行处理,读取模型材质信息并得到符合fbs三维模型格式的材质、纹理及贴图;
S4、fbs三维模型格式输出,将经过所述步骤S2所处理得到的符合fbs三维模型格式的实体数据按照步骤S2创建的实体索引,写入fbs三维模型文件中;
S5、材质库输出,将经所述步骤S3所处理得到的符合fbs三维模型格式的材质、纹理及贴图根据步骤S2创建的实体索引写入fbs三维模型文件中。
2.根据权利要求1所述的一种将fbx模型文件自动转换为fbs模型文件的方法,其特征在于,
所述步骤S1所述的几何信息包括fbx三维模型中每一个模型实体的顶点、线、面和法线的信息;所述步骤S1所述的纹理及贴图信息包括fbx三维模型中每一个模型实体所涉及的表面贴图和颜色设置。
3.根据权利要求1所述的一种将fbx模型文件自动转换为fbs模型文件的方法,其特征在于,
所述步骤S2中所述的对fbx模型文件进行几何信息处理包括对顶点的处理和法线的处理,且对顶点和法线均要进行坐标轴转换处理。
4.根据权利要求3所述的一种将fbx模型文件自动转换为fbs模型文件的方法,其特征在于,
所述对顶点的处理是直接读取几何信息的几何转换矩阵和全局转换矩阵,并对所有顶点进行坐标变换,得到全局坐标系下的顶点坐标值。
5.根据权利要求4所述的一种将fbx模型文件自动转换为fbs模型文件的方法,其特征在于,
所述对fbx模型文件进行纹理及贴图信息处理中,根据fbx三维模型添加材质的时候是以体为单位添加而不是面的特点,在读取材质的时以一个三维实体对应一种材质,进而建立三维实体与材质之间的关联的方式进行纹理及贴图信息处理。
6.根据权利要求4所述的一种将fbx模型文件自动转换为fbs模型文件的方法,其特征在于,
所述对fbx模型文件进行纹理及贴图处理包括两个步骤:
第一步是提取纹理及贴图,fbx文件中包含的纹理及贴图存储在fbxsurfaceMaterial类,通过遍历材质提取fbx文件中包含的纹理及贴图存放地址,然后读取地址进行提取纹理贴图;
第二步是纹理及贴图处理,纹理贴图根据其是否具有alpha通道来转换为jpg或者png格式图片。
7.根据权利要求1所述的一种将fbx模型文件自动转换为fbs模型文件的方法,其特征在于,
所述步骤S5中材质库输出,根据fbs三维模型材质文件保存在模型文件夹下由模型文件中的索引调用,而fbx三维模型所存储的材质库是不重复的特点,将fbx模型文件的纹理及贴图逐个转换为JPG或png格式图片输出,并复制到fbs三维模型格式文件夹下。
8.根据权利要求1-7任一所述的一种将fbx模型文件自动转换为fbx模型文件的方法,其特征在于,
将所有经过所述步骤S2处理的几何信息读取形成一个包含顶点位置、顶点法线、顶点切线、顶点uv、顶点color信息的列表,遍历列表将几何信息输出到fbs的mesh部分。
9.根据权利要求1-7任一所述的一种将fbx模型文件自动转换为fbx模型文件的方法,其特征在于,
所述步骤S3中对fbx模型文件进行纹理及贴图信息处理,为每个材质或纹理都创建了全局唯一id。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810274512.5A CN108628945B (zh) | 2018-03-29 | 2018-03-29 | 一种将fbx模型文件自动转换为fbs模型文件的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810274512.5A CN108628945B (zh) | 2018-03-29 | 2018-03-29 | 一种将fbx模型文件自动转换为fbs模型文件的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108628945A CN108628945A (zh) | 2018-10-09 |
CN108628945B true CN108628945B (zh) | 2021-10-15 |
Family
ID=63696459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810274512.5A Expired - Fee Related CN108628945B (zh) | 2018-03-29 | 2018-03-29 | 一种将fbx模型文件自动转换为fbs模型文件的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108628945B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109559384B (zh) * | 2018-11-19 | 2022-11-08 | 长沙眸瑞网络科技有限公司 | 一种基于WebGL的网页端三维模型编辑方法 |
CN109688395B (zh) * | 2018-12-29 | 2020-01-14 | 北京中科寒武纪科技有限公司 | 运算方法、装置及相关产品 |
CN109933868A (zh) * | 2019-02-27 | 2019-06-25 | 壹仟零壹艺网络科技(北京)有限公司 | SketchUp模型材质贴图自动匹配方法及系统 |
CN110096484B (zh) * | 2019-04-12 | 2023-04-21 | 华东师范大学 | 一种基于Revit的3D模型批量导出方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104537715A (zh) * | 2015-01-09 | 2015-04-22 | 中国电建集团昆明勘测设计研究院有限公司 | 一种实现fbx三维模型自动转换为obj三维模型的方法 |
CN104794252A (zh) * | 2014-01-17 | 2015-07-22 | 中国石油集团工程设计有限责任公司 | 一种三维模型数据处理方法和电子终端 |
-
2018
- 2018-03-29 CN CN201810274512.5A patent/CN108628945B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104794252A (zh) * | 2014-01-17 | 2015-07-22 | 中国石油集团工程设计有限责任公司 | 一种三维模型数据处理方法和电子终端 |
CN104537715A (zh) * | 2015-01-09 | 2015-04-22 | 中国电建集团昆明勘测设计研究院有限公司 | 一种实现fbx三维模型自动转换为obj三维模型的方法 |
Non-Patent Citations (2)
Title |
---|
FBX三维模型自动转换为OBJ三维模型方法研究;闻平等;《测绘与空间地理信息》;20160125(第01期);124-126 * |
Mesh Pipeline;匿名;《http://google.github.io/fplbase/fplbase_guide_mesh_pipeline.html》;20170223;1-2 * |
Also Published As
Publication number | Publication date |
---|---|
CN108628945A (zh) | 2018-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108628945B (zh) | 一种将fbx模型文件自动转换为fbs模型文件的方法 | |
CN104750913B (zh) | 一种实现dwg三维模型自动转换为x三维模型的方法 | |
US8831366B1 (en) | Encoding and compressing three-dimensional (3D) object data models | |
CN104537715B (zh) | 一种实现fbx三维模型自动转换为obj三维模型的方法 | |
US10394221B2 (en) | 3D printing using 3D video data | |
US20110018873A1 (en) | Two-dimensional to three-dimensional image conversion system and method | |
JP2003271984A (ja) | レンダリングシステム、レンダリング方法及びその記録媒体 | |
US6411303B1 (en) | Method of efficiently recording a number of texture images in memory | |
CN110415345B (zh) | 实现esri tin模型转换为obj三维模型的方法及系统 | |
CN111695183B (zh) | Bim模型轻量化导出方法及系统 | |
US9030473B2 (en) | Computing device and method for determining distance between two curved surfaces | |
CN110096484B (zh) | 一种基于Revit的3D模型批量导出方法 | |
US9098937B2 (en) | Electronic device and method for simulating three-dimensional model of workpiece | |
CN111161375A (zh) | 一种大比例尺数字地形图的分幅模型及分幅方法 | |
US20080303815A1 (en) | Method and apparatus for detecting between virtual objects | |
CN107729511B (zh) | 一种可定制的地理信息数据矩形分幅方法 | |
CN115272552A (zh) | 模型渲染方法和装置 | |
CN110796736A (zh) | 北斗空间地图网格模型的建立方法及装置 | |
CN112070874A (zh) | 一种图像渲染的方法和装置 | |
US20040164982A1 (en) | Method and apparatus for editing three-dimensional model, and computer readable medium | |
CN111080507B (zh) | 一种面向gpu硬件图像处理卷积过滤系统的tlm微结构 | |
CN116883575B (zh) | 建筑群渲染方法、装置、计算机设备和存储介质 | |
CN117078853B (zh) | 一种基于数字孪生体的工件缺陷样本扩增方法及存储介质 | |
JP2012128609A (ja) | 図面作成支援方法及び装置 | |
JP2021189635A (ja) | 情報処理方法、および情報処理装置 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20211015 |