CN109636893A - 三维OBJ模型及MTL材质在iPhone中的解析与渲染方法 - Google Patents
三维OBJ模型及MTL材质在iPhone中的解析与渲染方法 Download PDFInfo
- Publication number
- CN109636893A CN109636893A CN201910003355.9A CN201910003355A CN109636893A CN 109636893 A CN109636893 A CN 109636893A CN 201910003355 A CN201910003355 A CN 201910003355A CN 109636893 A CN109636893 A CN 109636893A
- Authority
- CN
- China
- Prior art keywords
- file
- array
- mtl
- storing
- model
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Abstract
本发明公开了一种三维OBJ模型及MTL材质在iPhone中的解析与渲染方法,包括以下步骤:读取OBJ模型定义文件和MTL材质定义文件;根据文件格式编写解析函数,将读入的数据解析为数组;创建OpenGL ES模型对象,并生成相应的.h头文件和.m实现文件;基于解析的OBJ模型数据,使用OpenGL ES绘制三维模型;基于解析的MTL材质数据,使用GLKit渲染模型并添加材质;在iPhone应用上展示。本发明使用的是目前通用的三维OBJ模型及MTL材质,实现了三维模型在iPhone设备上的载入与展示,具有广阔的应用前景。
Description
技术领域
本发明涉及图形处理技术领域,具体涉及一种三维OBJ模型及MTL材质在移动iPhone中的解析与渲染方法。
背景技术
随着移动设备硬件性能的发展,移动智能终端逐渐成为人们生活中不可或缺的物品。与此同时,用户更希望在移动端的新应用上能够具有更加绚丽的展示形式和更加流畅的用户体验。而针对移动平台的图形渲染引擎OpenGL ES正是为了实现这一需求而被开发。
OpenGL ES(OpenGL for Embedded Systems)是OpenGL三维图形API的子集,针对手机、PDA和游戏主机等嵌入式设备而设计。应用领域为视频、图形、图片处理,2D/3d游戏引擎开发,科学可视化等等。
由于OpenGL ES开源且跨平台,iPhone设备的iOS系统也能够使用OpenGL ES的标准接口来支持3D图形功能。且结合原生的GLKit,可以实现高质量的图形显示效果及更加震撼的视觉冲击效果。
当然,现代三维建模工具已经定义了许多种三维模型文件格式,如3DS、OBJ、MD2、MD3、MDL等等。目前亟待需要进一步研究通用和流行的OBJ模型格式和与其相关的MTL材质文件格式在iPhone设备中的应用。
发明内容
本发明的主要目的在于满足移动设备上三维模型解析与渲染的需求,公开一种三维OBJ模型及MTL材质在iPhone中的解析与渲染方法,克服OBJ三维模型文件无法直接在移动端上读取的技术难点,最终实现三维模型在iPhone设备上的载入与展示。
本发明的目的可以通过采取如下技术方案达到:
一种三维OBJ模型及MTL材质在iPhone中的解析与渲染方法,所述的解析与渲染方法包括以下步骤:
S1、读取OBJ模型定义文件和MTL材质定义文件;
S2、根据文件格式编写解析函数,将读入的数据解析为数组;
S3、创建OpenGL ES模型对象,并生成相应的.h头文件和.m实现文件;
S4、基于解析的OBJ模型数据,使用OpenGL ES绘制三维模型;
S5、基于解析的MTL材质数据,使用GLKit渲染模型并添加材质。
进一步地,所述的OBJ模型结构包括:(1)顶点、(2)法线、(3)纹理坐标、(4)面片、(5)材质使用,其中,
(1)顶点:后接(x,y,z)三维坐标单精度浮点参数,分别表示顶点的X、Y、Z坐标值,以此指定一个顶点。以回车换行作为结尾。
(2)法线:后接(x,y,z)三维坐标单精度浮点参数,分别表示法向量的X、Y、Z坐标值,指定一个法线向量。以回车换行作为结尾。
(3)纹理坐标:后接两个单精度浮点参数,分别表示纹理坐标的U、V值,以此指定一个纹理坐标。以回车换行作为结尾。
(4)面片:一个表面实际为一个三角形小面片。该小面片由顶点下标、纹理坐标下标、法向量下标表示。以回车换行作为结尾。
(5)材质使用:后接一个参数,该参数指定了从此行之后到下一个以usemtl开头的行之间的所有表面所使用的材质名称。该材质在与OBJ文件关联的MTL文件中找到具体信息。
进一步地,所述的MTL材质文件结构包括:(1)基础材质、(2)纹理贴图,其中,
(1)基础材质:该部分首先对材质进行定义,然后对材质进行设定。设定的前缀分别有Ka、Kd、Ks,分别指定材质的环境光成分、漫射光成分、镜面光成分。格式为“前缀参数1参数2参数3”,三个参数均为单精度浮点数。
(2)纹理贴图:带纹理材质使用如上的基础材质定义,并额外定义纹理贴图。关键字前缀有map_Ka、map_Kd,其中map_Ka为环境反射指定颜色纹理文件(.mpc)或纹理文件(.cxc),或是一个位图文件。在渲染的时候,Ka的值将再乘上map_Ka的值;map_Kd为漫反射指定颜色纹理文件(.mpc)或纹理文件(.cxc),或是一个位图文件。作用原理与map_Ka相同。
进一步地,所述的步骤S1过程如下:
S101、创建fstream读取OBJ和MTL文件;
S102、使用fstream的good函数判断文件读取是否成功,成功则转入步骤S2,否则,重复步骤S1。
进一步地,所述的步骤S2过程如下:
S201、定义变量,其中,变量包括:
用于存储定点个数的整型positionsCount,用于存储法线个数的整型normalsCount,用于存储纹理坐标个数的整型texelsCount,用于存储三角形面片个数的整型facesCount,用于存储材质信息个数的整型materialsCount;
S202、分别对读取的OBJ和MTL数据进行第一次逐行遍历。对OBJ数据逐行遍历时,识别相应的行前缀,统计得出定点、法线、纹理坐标和三角形面片的个数,并依次给变量positionsCount、normalsCount、texelsCount和facesCount赋值;对MTL数据逐行遍历时,方法同OBJ数据遍历,统计得出材质信息的个数,给变量materialsCount赋值;
S203、利用S202得到的数据个数,定义数组变量,其中,数组变量包括:
用于存储定点坐标信息的浮点数组positions[positionsCount][3],用于存储法线坐标信息的浮点数组texels[texelsCount][2],用于存储纹理坐标信息的浮点数组normals[normalsCount][3],用于存储三角形面片坐标信息的整型数组faces[facesCount][10],用于存储材质名称信息的字符串数组materials[materialsCount],用于存储漫射光成分信息的浮点数组diffuses[materialsCount][3],用于存储镜面光成分信息的浮点数组speculars[materialsCount][3];
S204、对OBJ数据和MTL数据进行第二次逐行遍历。匹配到前缀时,利用strtok函数以空格作为分隔符,将字段分割,然后依次写入到上述对应数组中进行存储。至此,已将数据成功读入数组。
进一步地,所述的步骤S3过程如下:
S301、OpenGL ES会以一维数组的形式对3D模型数据进行读取,以二维数组的形式对漫射光、镜面光数据进行读取。因此,为了便于使用OpenGL ES,先将S2中得到的数据生成.h头文件和.m实现文件;
S302、定义.h头文件需要的属性,其中,属性包括:
用于存储模型顶点坐标的浮点类型常量数组modelPositions,用于存储模型纹理坐标的浮点类型常量数组modelTexels,用于存储模型法向量坐标的浮点类型常量数组modelNormals,用于存储材质个数的整型常量modelMaterials,用于存储每一个face数组的开始顶点下标的整型常量数组modelFirsts,用于存储每一个材质要绘制顶点个数的整型常量数组modelCounts,用于存储漫射光坐标的浮点类型二维数组modelDiffuses,用于存储镜面光坐标的浮点类型二维数组modelSpeculars;
S303、.m实现文件即为.h头文件的实现文件,只需要将S2中得到的二维数据降维至一维数据再由ofstream输出即可。
进一步地,所述的步骤S4过程如下:
S401、创建GLKView实例对象,并初始化一个OpenGL ES context上下文环境;
S402、使用glEnableVertexAttribArray、glVertexAttribPointer等OpenGL ES中的函数和GLKit中定义的枚举类型GLKVertexAttribPosition、GLKVertexAttribNormal进行3D模型的绘制。其中,所用到的函数和枚举类型定义如下:
函数glEnableVertexAttribArray,用于启用某一项属性数组访问功能,该函数需要输入顶点属性数组下标,无返回值;函数glVertexAttribPointer,利用指针,将顶点数组的值读入绘制的context中,无返回值;枚举量GLKVertexAttribPosition,用于向着色器提供顶点数据;枚举量GLKVertexAttribNormal,用于向着色器提供法向量坐标点数据。
进一步地,所述的步骤S5过程如下:
S501、使用GLKit中的GLKBaseEffect类为3D模型添加光学效果;
S502、进一步利用生成的modelDiffuses数组和modelSpeculars数组为GLKBaseEffect实例对象添加材质的漫射光和镜面光效果。至此,完成了三维模型的渲染。
本发明相对于现有技术具有如下的优点及效果:
1)、本发明结合了强大的三维图形处理引擎OpenGL ES及流行的三维模型格式OBJ,能够在iPhone设备上实现更流畅、更丰富的图形效果。
2)、本发明克服OBJ三维模型文件无法直接在移动端上读取的技术难点,最终实现三维模型在iPhone设备上的载入与展示,并且具有更快的模型文件载入与解析速度。
附图说明
图1是本发明中公开的三维OBJ模型及MTL材质在iPhone中的解析与渲染方法的原理框图;
图2是本发明中使用的OpenGL ES的框架结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
如附图1所示,本实施例公开了一种三维OBJ模型及MTL材质在iPhone中的解析与渲染方法,包括以下步骤:
S1、读取OBJ模型定义文件和MTL材质定义文件。具体步骤如下:
首先,创建fstream读取OBJ和MTL文件。
然后,使用fstream的good函数判断文件读取是否成功,成功则继续下一步操作。
S2、根据文件格式编写解析函数,将读入的数据解析为数组。具体步骤如下:
首先,定义变量,其中,变量包括:
用于存储定点个数的整型positionsCount,用于存储法线个数的整型normalsCount,用于存储纹理坐标个数的整型texelsCount,用于存储三角形面片个数的整型facesCount,用于存储材质信息个数的整型materialsCount。
然后,分别对读取的OBJ和MTL数据进行第一次逐行遍历。对OBJ数据逐行遍历时,识别相应的行前缀,统计得出定点、法线、纹理坐标和三角形面片的个数,并依次给变量positionsCount、normalsCount、texelsCount和facesCount赋值;对MTL数据逐行遍历时,方法同OBJ数据遍历,统计得出材质信息的个数,给变量materialsCount赋值。
接着,利用读取文件得到的数据个数,定义数组变量,其中,数组变量包括:
用于存储定点坐标信息的浮点数组positions[positionsCount][3],用于存储法线坐标信息的浮点数组texels[texelsCount][2],用于存储纹理坐标信息的浮点数组normals[normalsCount][3],用于存储三角形面片坐标信息的整型数组faces[facesCount][10],用于存储材质名称信息的字符串数组materials[materialsCount],用于存储漫射光成分信息的浮点数组diffuses[materialsCount][3],用于存储镜面光成分信息的浮点数组speculars[materialsCount][3]。
最后,对OBJ数据和MTL数据进行第二次逐行遍历。匹配到前缀时,利用strtok函数以空格作为分隔符,将字段分割,然后依次写入到上述对应数组中进行存储。至此,已将数据成功读入数组。
S3、创建OpenGL ES模型对象,并生成相应的.h头文件和.m实现文件。具体步骤如下:
首先,OpenGL ES会以一维数组的形式对3D模型数据进行读取,以二维数组的形式对漫射光、镜面光数据进行读取。因此,为了便于使用OpenGL ES,先将S2中得到的数据生成.h头文件和.m实现文件。
然后,定义.h头文件需要的属性,其中,属性包括:
用于存储模型顶点坐标的浮点类型常量数组modelPositions,用于存储模型纹理坐标的浮点类型常量数组modelTexels,用于存储模型法向量坐标的浮点类型常量数组modelNormals,用于存储材质个数的整型常量modelMaterials,用于存储每一个face数组的开始顶点下标的整型常量数组modelFirsts,用于存储每一个材质要绘制顶点个数的整型常量数组modelCounts,用于存储漫射光坐标的浮点类型二维数组modelDiffuses,用于存储镜面光坐标的浮点类型二维数组modelSpeculars。
接着,.m实现文件即为.h头文件的实现文件,只需要将S2中得到的二维数据降维至一维数据再由ofstream输出即可。
S4、基于解析的OBJ模型数据,使用OpenGL ES绘制三维模型。具体步骤如下:
首先,创建GLKView实例对象,并初始化一个OpenGL ES context上下文环境。
然后,使用glEnableVertexAttribArray、glVertexAttribPointer等OpenGL ES中的函数和GLKit中定义的枚举类型GLKVertexAttribPosition、GLKVertexAttribNormal进行3D模型的绘制。其中,所用到的函数和枚举类型定义如下:
函数glEnableVertexAttribArray,用于启用某一项属性数组访问功能,该函数需要输入顶点属性数组下标,无返回值;函数glVertexAttribPointer,利用指针,将顶点数组的值读入绘制的context中,无返回值;枚举量GLKVertexAttribPosition,用于向着色器提供顶点数据;枚举量GLKVertexAttribNormal,用于向着色器提供法向量坐标点数据。
S5、基于解析的MTL材质数据,使用GLKit渲染模型并添加材质。具体步骤如下:
首先,使用GLKit中的GLKBaseEffect类为3D模型添加光学效果。
然后,进一步利用生成的modelDiffuses数组和modelSpeculars数组为GLKBaseEffect实例对象添加材质的漫射光和镜面光效果。
至此,完成了三维模型的渲染。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (8)
1.一种三维OBJ模型及MTL材质在iPhone中的解析与渲染方法,其特征在于,所述的解析与渲染方法包括以下步骤:
S1、读取OBJ模型定义文件和MTL材质定义文件;
S2、根据文件格式编写解析函数,将读入的数据解析为数组;
S3、创建OpenGL ES模型对象,并生成相应的.h头文件和.m实现文件;
S4、基于解析的OBJ模型数据,使用OpenGL ES绘制三维模型;
S5、基于解析的MTL材质数据,使用GLKit渲染模型并添加材质。
2.根据权利要求1所述的三维OBJ模型及MTL材质在iPhone中的解析与渲染方法,其特征在于,所述的OBJ模型结构包括:顶点、法线、纹理坐标、面片、材质使用,其中,
所述的顶点后接(x,y,z)三维坐标单精度浮点参数,分别表示顶点的X、Y、Z坐标值,以此指定一个顶点,以回车换行作为结尾;
所述的法线后接(x,y,z)三维坐标单精度浮点参数,分别表示法向量的X、Y、Z坐标值,以此指定一个法线向量,以回车换行作为结尾;
所述的纹理坐标后接两个单精度浮点参数,分别表示纹理坐标的U、V值,以此指定一个纹理坐标,以回车换行作为结尾;
所述的面片为一个三角形小面片,用于指代一个表面,该三角形小面片由顶点、纹理坐标、法向量表示,以回车换行作为结尾;
所述的材质使用后接一个参数,该参数指定了从此行之后到下一个以usemtl开头的行之间的所有表面所使用的材质名称,该材质在与OBJ文件关联的MTL文件中找到具体信息。
3.根据权利要求1所述的三维OBJ模型及MTL材质在iPhone中的解析与渲染方法,其特征在于,所述的MTL材质文件结构包括:基础材质和纹理贴图,其中,
所述的基础材质,首先对材质进行定义,然后对材质进行设定,设定的前缀分别有Ka、Kd、Ks,分别指定材质的环境光成分、漫射光成分、镜面光成分,格式为“前缀参数1参数2参数3”,三个参数均为单精度浮点数;
所述的纹理贴图,由带纹理材质使用如上的基础材质定义,并额外定义纹理贴图,关键字前缀有map_Ka、map_Kd,
其中,map_Ka为环境反射指定颜色纹理文件.mpc、纹理文件.cxc或是一个位图文件,在渲染的时候,Ka的值将再乘上map_Ka的值;map_Kd为漫反射指定颜色纹理文件.mpc、纹理文件.cxc或是一个位图文件,在渲染的时候,Kd的值将再乘上map_Kd的值。
4.根据权利要求1所述的三维OBJ模型及MTL材质在iPhone中的解析与渲染方法,其特征在于,所述的步骤S1过程如下:
S101、创建fstream读取OBJ和MTL文件;
S102、使用fstream的good函数判断文件读取是否成功,成功则转入下一步骤。
5.根据权利要求1所述的三维OBJ模型及MTL材质在iPhone中的解析与渲染方法,其特征在于,所述的步骤S2过程如下:
S201、定义变量,其中,变量包括:用于存储定点个数的整型positionsCount,用于存储法线个数的整型normalsCount,用于存储纹理坐标个数的整型texelsCount,用于存储三角形面片个数的整型facesCount,用于存储材质信息个数的整型materialsCount;
S202、分别对读取的OBJ和MTL数据进行第一次逐行遍历,对OBJ数据逐行遍历时,识别相应的行前缀,统计得出定点、法线、纹理坐标和三角形面片的个数,并依次给变量positionsCount、normalsCount、texelsCount和facesCount赋值;对MTL数据逐行遍历时,识别相应的行前缀,统计得出材质信息的个数,给变量materialsCount赋值;
S203、利用步骤S202得到的数据个数,定义数组变量,其中,数组变量包括:
用于存储定点坐标信息的浮点数组positions[positionsCount][3],用于存储法线坐标信息的浮点数组texels[texelsCount][2],用于存储纹理坐标信息的浮点数组normals[normalsCount][3],用于存储三角形面片坐标信息的整型数组faces[facesCount][10],用于存储材质名称信息的字符串数组materials[materialsCount],用于存储漫射光成分信息的浮点数组diffuses[materialsCount][3],用于存储镜面光成分信息的浮点数组speculars[materialsCount][3];
S204、对OBJ数据和MTL数据进行第二次逐行遍历,匹配到前缀时,利用strtok函数以空格作为分隔符,将字段分割,然后依次写入到上述对应数组中进行存储。
6.根据权利要求1所述的三维OBJ模型及MTL材质在iPhone中的解析与渲染方法,其特征在于,所述的步骤S3过程如下:
S301、根据步骤S2中得到的数据生成.h头文件和.m实现文件;
S302、定义.h头文件需要的属性,其中,属性包括:用于存储模型顶点坐标的浮点类型常量数组modelPositions,用于存储模型纹理坐标的浮点类型常量数组modelTexels,用于存储模型法向量坐标的浮点类型常量数组modelNormals,用于存储材质个数的整型常量modelMaterials,用于存储每一个face数组的开始顶点下标的整型常量数组modelFirsts,用于存储每一个材质要绘制顶点个数的整型常量数组modelCounts,用于存储漫射光坐标的浮点类型二维数组modelDiffuses,用于存储镜面光坐标的浮点类型二维数组modelSpeculars;
S303、将步骤S2中得到的二维数据降维至一维数据再由ofstream输出,得到.m实现文件。
7.根据权利要求1所述的三维OBJ模型及MTL材质在iPhone中的解析与渲染方法,其特征在于,所述的步骤S4过程如下:
S401、创建GLKView实例对象,并初始化一个OpenGL ES context上下文环境;
S402、使用函数glEnableVertexAttribArray、函数glVertexAttribPointer和GLKit中定义的枚举类型GLKVertexAttribPosition、GLKVertexAttribNormal进行3D模型的绘制,其中,所用到的函数和枚举类型定义如下:
函数glEnableVertexAttribArray,用于启用某一项属性数组访问功能,该函数需要输入顶点属性数组下标,无返回值;函数glVertexAttribPointer,利用指针,将顶点数组的值读入绘制的context中,无返回值;枚举量GLKVertexAttribPosition,用于向着色器提供顶点数据;枚举量GLKVertexAttribNormal,用于向着色器提供法向量坐标点数据。
8.根据权利要求1所述的三维OBJ模型及MTL材质在iPhone中的解析与渲染方法,其特征在于,所述的步骤S5过程如下:
S501、使用GLKit中的GLKBaseEffect类为3D模型添加光学效果;
S502、利用生成的modelDiffuses数组和modelSpeculars数组为GLKBaseEffect实例对象添加材质的漫射光和镜面光效果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910003355.9A CN109636893B (zh) | 2019-01-03 | 2019-01-03 | 三维OBJ模型及MTL材质在iPhone中的解析与渲染方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910003355.9A CN109636893B (zh) | 2019-01-03 | 2019-01-03 | 三维OBJ模型及MTL材质在iPhone中的解析与渲染方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109636893A true CN109636893A (zh) | 2019-04-16 |
CN109636893B CN109636893B (zh) | 2023-04-21 |
Family
ID=66056560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910003355.9A Active CN109636893B (zh) | 2019-01-03 | 2019-01-03 | 三维OBJ模型及MTL材质在iPhone中的解析与渲染方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109636893B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110767267A (zh) * | 2019-09-30 | 2020-02-07 | 华中科技大学 | 一种基于Python对ReaxFF力场计算结果数据处理的方法 |
CN111145074A (zh) * | 2019-11-30 | 2020-05-12 | 航天科技控股集团股份有限公司 | 全液晶仪表图像渲染方法 |
CN111275814A (zh) * | 2020-01-21 | 2020-06-12 | 山东浪潮通软信息科技有限公司 | 一种面向webgl应用的三维模型轻量化方法 |
CN111599014A (zh) * | 2020-04-03 | 2020-08-28 | 上海嘉奥信息科技发展有限公司 | 基于Unity3D的OBJ文件解析面渲染的方法、系统及介质 |
CN112258616A (zh) * | 2020-10-23 | 2021-01-22 | 南京维伍网络科技有限公司 | 一种SketchUp到D5渲染器实时渲染的数据转换方法 |
CN112258615A (zh) * | 2020-10-23 | 2021-01-22 | 南京维伍网络科技有限公司 | 一种Revit到D5渲染器实时渲染的数据转换方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070035552A1 (en) * | 2005-08-15 | 2007-02-15 | Takashi Nozaki | Graphics processing apparatus and graphics processing method |
CN103577046A (zh) * | 2013-10-24 | 2014-02-12 | 广州市久邦数码科技有限公司 | 一种3d立体桌面系统及其实现方法 |
CN104834672A (zh) * | 2015-04-01 | 2015-08-12 | 重庆天极网络有限公司 | 基于互联网的实物3d互动展示系统 |
CN105912655A (zh) * | 2016-04-11 | 2016-08-31 | 东南大学 | 基于WebGL的三维模型显示方法及相应的Web-BIM工程信息集成管理系统 |
CN106710003A (zh) * | 2017-01-09 | 2017-05-24 | 成都品果科技有限公司 | 一种基于OpenGL ES的三维拍照方法和系统 |
CN107622519A (zh) * | 2017-09-15 | 2018-01-23 | 东南大学 | 基于移动设备的三维模型混合渲染系统及其方法 |
CN108710739A (zh) * | 2018-05-11 | 2018-10-26 | 北京建筑大学 | 一种建筑信息模型轻量化和三维场景可视化的方法及系统 |
-
2019
- 2019-01-03 CN CN201910003355.9A patent/CN109636893B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070035552A1 (en) * | 2005-08-15 | 2007-02-15 | Takashi Nozaki | Graphics processing apparatus and graphics processing method |
CN103577046A (zh) * | 2013-10-24 | 2014-02-12 | 广州市久邦数码科技有限公司 | 一种3d立体桌面系统及其实现方法 |
CN104834672A (zh) * | 2015-04-01 | 2015-08-12 | 重庆天极网络有限公司 | 基于互联网的实物3d互动展示系统 |
CN105912655A (zh) * | 2016-04-11 | 2016-08-31 | 东南大学 | 基于WebGL的三维模型显示方法及相应的Web-BIM工程信息集成管理系统 |
CN106710003A (zh) * | 2017-01-09 | 2017-05-24 | 成都品果科技有限公司 | 一种基于OpenGL ES的三维拍照方法和系统 |
CN107622519A (zh) * | 2017-09-15 | 2018-01-23 | 东南大学 | 基于移动设备的三维模型混合渲染系统及其方法 |
CN108710739A (zh) * | 2018-05-11 | 2018-10-26 | 北京建筑大学 | 一种建筑信息模型轻量化和三维场景可视化的方法及系统 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110767267A (zh) * | 2019-09-30 | 2020-02-07 | 华中科技大学 | 一种基于Python对ReaxFF力场计算结果数据处理的方法 |
CN110767267B (zh) * | 2019-09-30 | 2021-08-03 | 华中科技大学 | 一种基于Python对ReaxFF力场计算结果数据处理的方法 |
CN111145074A (zh) * | 2019-11-30 | 2020-05-12 | 航天科技控股集团股份有限公司 | 全液晶仪表图像渲染方法 |
CN111145074B (zh) * | 2019-11-30 | 2023-11-28 | 航天科技控股集团股份有限公司 | 全液晶仪表图像渲染方法 |
CN111275814A (zh) * | 2020-01-21 | 2020-06-12 | 山东浪潮通软信息科技有限公司 | 一种面向webgl应用的三维模型轻量化方法 |
CN111275814B (zh) * | 2020-01-21 | 2023-10-13 | 浪潮通用软件有限公司 | 一种面向webgl应用的三维模型轻量化方法 |
CN111599014A (zh) * | 2020-04-03 | 2020-08-28 | 上海嘉奥信息科技发展有限公司 | 基于Unity3D的OBJ文件解析面渲染的方法、系统及介质 |
CN111599014B (zh) * | 2020-04-03 | 2023-06-06 | 上海嘉奥信息科技发展有限公司 | 基于Unity3D的OBJ文件解析面渲染的方法、系统及介质 |
CN112258616A (zh) * | 2020-10-23 | 2021-01-22 | 南京维伍网络科技有限公司 | 一种SketchUp到D5渲染器实时渲染的数据转换方法 |
CN112258615A (zh) * | 2020-10-23 | 2021-01-22 | 南京维伍网络科技有限公司 | 一种Revit到D5渲染器实时渲染的数据转换方法 |
CN112258616B (zh) * | 2020-10-23 | 2023-10-03 | 南京维伍网络科技有限公司 | 一种SketchUp到D5渲染器实时渲染的数据转换方法 |
CN112258615B (zh) * | 2020-10-23 | 2023-10-03 | 南京维伍网络科技有限公司 | 一种Revit到D5渲染器实时渲染的数据转换方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109636893B (zh) | 2023-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109636893A (zh) | 三维OBJ模型及MTL材质在iPhone中的解析与渲染方法 | |
US20230053462A1 (en) | Image rendering method and apparatus, device, medium, and computer program product | |
CN101116111B (zh) | 使用3d光栅化算法的2d/3d线条渲染 | |
US8325177B2 (en) | Leveraging graphics processors to optimize rendering 2-D objects | |
US8059119B2 (en) | Method for detecting border tiles or border pixels of a primitive for tile-based rendering | |
US6191794B1 (en) | Method and apparatus for scaling texture maps for graphical images | |
US20090046098A1 (en) | Primitive binning method for tile-based rendering | |
CN102289845B (zh) | 一种三维模型绘制方法以及装置 | |
US8773422B1 (en) | System, method, and computer program product for grouping linearly ordered primitives | |
Theoharis et al. | Graphics and visualization: principles & algorithms | |
CN102044089A (zh) | 一种三维模型的自适应化简、渐进传输和快速绘制的方法 | |
CN112100795B (zh) | 一种计算机辅助设计图纸的对比方法及装置 | |
US10325403B2 (en) | Image based rendering techniques for virtual reality | |
CN102163340A (zh) | 计算机系统中实现三维动态几何图形数据信息标注的方法 | |
CN113593027B (zh) | 一种三维航电显控界面装置 | |
CN101639767A (zh) | 用于改善图形性能的方法、装置和计算机程序产品 | |
CN108230433A (zh) | 3d地图散点数据展示方法及系统、信息数据处理终端 | |
CN108198237A (zh) | 动态壁纸生成方法、装置、设备及介质 | |
US20030103048A1 (en) | System and method for hidden object removal | |
CN115512025A (zh) | 模型渲染性能的检测方法、装置、电子设备及存储介质 | |
CN112528428B (zh) | 对工程结构的物理参数展示的方法、装置和计算机设备 | |
CN112132941B (zh) | 一种文字渲染方法、装置、设备及存储介质 | |
CN109598792B (zh) | 三维场景中建筑物注记的自动放置方法 | |
KR100693134B1 (ko) | 3차원 이미지 처리 | |
She et al. | An efficient method for rendering linear symbols on 3D terrain using a shader language |
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 |