CN109829962B - 一种利用opengl的物体空间消隐线计算加速方法 - Google Patents

一种利用opengl的物体空间消隐线计算加速方法 Download PDF

Info

Publication number
CN109829962B
CN109829962B CN201910085408.6A CN201910085408A CN109829962B CN 109829962 B CN109829962 B CN 109829962B CN 201910085408 A CN201910085408 A CN 201910085408A CN 109829962 B CN109829962 B CN 109829962B
Authority
CN
China
Prior art keywords
rendering
image
size
opengl
data
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.)
Active
Application number
CN201910085408.6A
Other languages
English (en)
Other versions
CN109829962A (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.)
Glodon Co Ltd
Original Assignee
Glodon 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 Glodon Co Ltd filed Critical Glodon Co Ltd
Priority to CN201910085408.6A priority Critical patent/CN109829962B/zh
Publication of CN109829962A publication Critical patent/CN109829962A/zh
Application granted granted Critical
Publication of CN109829962B publication Critical patent/CN109829962B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Generation (AREA)

Abstract

本发明提供一种对物体空间进行消隐计算的加速方法,属于计算机几何图形技术领域。该方法利用OPENGL深度缓冲技术,将几何图形的面拆分显示到视景体中,将每个面渲染不同颜色,通过图像的像素颜色获得可见面序号,将可见面和不可面的信息传递给消隐算法,具体步骤包括初始化渲染环境、初始化渲染数据、初始化图像空间、计算视景体范围、物体图像渲染、获取结果数据、进行消隐计算。本发明利用OPENGL直接使用显卡硬件来进行消隐渲染,再利用渲染图像来确定消隐物体的可见信息,将可见信息输入物体空间消隐算法进行计算。既利用了图像空间效率高的优点,又可以通过物体空间算法获得解析表达的消隐线结果,为大型模型输出矢量二维图纸提供了高效的方法。

Description

一种利用OPENGL的物体空间消隐线计算加速方法
技术领域
本发明属于计算机几何图形技术领域,具体涉及一种利用OPENGL的物体空间消隐线计算加速方法,即利用OPENGL深度缓冲技术对物体空间消隐线计算进行加速的方法。特别是用于复杂建筑三维模型生成二维图纸时进行线消隐计算时的效率提升方法。
背景技术
消隐问题是计算机图形学中的基本问题之一。消隐就是要运用某种算法把物体上看不见的线或面从显示画面中消去或者用虚线画出。为消去隐藏面,要把每一个组成物体的面与每一个不透明面进行遮蔽判断,把可见的或部分可见的与不可见的或部分不可见的区别开来,最后绘出那些可见面或面的可见部分,这样就可得到经过消隐处理的立体图。
消隐处理的算法最早出现于上世纪60年代,经过多年的研究,已经设计出多种算法。按照消隐计算的结果,可以分为物体空间方法和图像空间方法。物体空间方法是通过比较物体和物体的相对关系来决定可见与不可见的,由于物体遮挡关系是根据几何位置关系进行判断,因此物体空间方法的消隐结果通常是几何连续的曲线或曲面;图像空间方法则是根据在图像像素点上各投影点之间的关系来确定可见与否的,因此图像空间方法的消隐结果通常是不连续的像素点集。物体空间方法由于需要大量的几何计算来判断遮挡关系,通常计算效率不佳,虽然可以通过空间索引结构对位置关系判断进行加速,对于复杂模型加速效果有限。图像空间方法通常可以利用计算机GPU进行专门的投影计算,其计算效率大大优于物体空间方法,但由于消隐结果由像素点组成的图像,不能用于二维矢量图纸生成。
由三维实体模型生成二维图纸是消隐线计算的主要应用场景之一。目前在机械行业,数字三维模型已经基本取代了传统的二维图纸,通过三维模型生成二维图纸是工程图制作的主要方法。由于模型数字化技术在建筑行业还没有得到深入发展,但在不久的将来,机械行业的数字化技术路线也会应用于建筑行业。建筑图纸也将会由三维模型通过消隐线计算获得。
由于建筑模型复杂程度会远大于机械模型,体内面的数量通常在万级以上。采用物体空间消隐方法,通常计算时间会到几分钟甚至十几分钟,如此长的计算时间通常不能满足商业使用的需求。因此需要一种有效的方法,对能够物体空间消隐计算进行大幅加速。
发明内容
本发明的目的是提供一种对物体空间进行消隐计算的加速方法。该方法利用OPENGL深度缓冲技术,将几何图形的面拆分显示到视景体中,将每个面渲染不同的颜色,通过所显示图像的像素颜色获得可见面的序号,将可见面和不可面的信息传递给物体空间消隐算法,精简消隐计算数据和流程,以达到提升效率的目的。
为实现上述发明目的,本发明采用以下技术方案。
一种利用OPENGL的物体空间消隐线计算加速方法,包括:
步骤一、初始化渲染环境;
对OPENGL的渲染方式进行配置,包括渲染设备设置、缓冲模式设置、像素格式;
步骤二、初始化渲染数据;
根据要进行消隐计算的几何实体,生成渲染数据,包括要显示体的离散三角形,以及三角形的顶点列表;
根据渲染三角形所在的面序号,设置渲染颜色;
根据渲染数据,计算实体在三维空间的包围盒;
步骤三、初始化图像空间;
根据实体在三维空间的尺寸、显示精度和计算机硬件的支持能力,确定渲染图像的大小,以及需要细分渲染图像的数量;
根据图像的大小设置帧缓冲对像和深度缓冲区;
步骤四、计算视景体范围;
对三维空间的包围盒按照细分的数量进行细分,计算渲染空间的子包围盒大小,按照子包围盒的大小与图像尺寸计算当前渲染视景体的尺寸;
按照视景体尺寸设置投影观察区;
步骤五、物体图像渲染;
设置绘制模式,设置背景颜色,将实体的渲染空间三角形的数据以及颜色数据输入OPENGL进行渲染绘制;
步骤六、获取结果数据;
获取渲染图像的所有像素点数据,根据像素颜色获得对应的面的序号;
在图像中显示的面即为可见面,没有对应颜色显示的面即为不可见面;
步骤七、进行消隐计算;
将可见面和不可见面的信息输入物体空间消隐线算法,直接进行消隐计算;
与可见面不相关联的线为不可见线,在计算中剔除。
作为优选,步骤一中,初始化渲染环境包括初始化显示窗体和初始化像素格式;
初始化显示窗体与操作系统相关,包括设置窗体大小,获取窗口句柄;
初始化像素格式是对像素描述结构体中数据进行定义,只需对OPENGL必须的属性信息进行定义,包括以下信息:像素格式描述子结构的大小、PIXELFORMATDESCRIPTOR结构的版本、象素缓冲特性的标志位、象素数据类型是RGBA还是颜色索引、每个颜色缓冲区中颜色位数、深度缓冲区的深度和图层类型。
作为优选,步骤二中,将几何实体离散成三角网,再由OPENGL进行三角面片渲染;
首先将输入的几何实体进行离散;
然后根据几何实体的离散数据,准备好显示数据,其中包括三角形顶点坐标,以及顶点对应的颜色分量;
根据所有顶点数据,计算渲染数据的包围盒。
进一步地,将输入的几何实体进行离散后,将离散数据由世界坐标系变换到观察坐标系中,变换后的数据观察方向为Z轴的负方向。
作为优选,步骤三具体包括:
获得显示实体的包围盒后,确定渲染图像在空间的尺寸;
根据外部输入的显示精度,计算出渲染图像所需要的像素尺寸;
根据计算机显卡硬件的处理能力设置最大的像素尺寸;
确定图像尺寸及细分数量后,需要据图像的大小设置帧缓冲对像和深度缓冲区,并打开深度检测。
进一步地,根据计算机显卡硬件的处理能力设置最大的像素尺寸过程中,当渲染图像像素尺寸超出硬件处理能力时,对渲染图像进行细分,具体计算方法为:
Figure BDA0001961626860000031
Figure BDA0001961626860000032
Figure BDA0001961626860000033
Figure BDA0001961626860000034
其中:XBoxMax和XBoxMin分别为实体包围盒X坐标的最大和最小值,XBoxSize为包围盒X坐标的宽度,YBoxMax和YBoxMin分别为实体包围盒Y坐标的最大和最小值,YBoxSize为包围盒Y坐标的宽度,Ppix为每个像素在物体空间的大小,Wpic为所需图像的宽度,Hpic为所需图像的高度,Mmaxpix是计算机所支持的最大像素数量,Nwidth为宽度方向所需要细分的次数,Nheight为高度方向所需要细分的次数,Wsub为细分的图像的宽度,Hsub为细分图像的高度。
作为优选,步骤四中,首先按照图像细分的数量,计算子包围盒的大小;
Figure BDA0001961626860000041
其中:XSubMin为细分子包围盒X方向上的最小值,YSubMin为细分子包围盒Y方向上的最小值,XSubMax为细分子包围盒X方向上的最在值,YSubMax为细分子包围盒Y方向上的最大值;
子包围盒的Z坐标与全包围盒相同;
视景体的数据计算方法为:
Figure BDA0001961626860000042
Figure BDA0001961626860000043
其中:va和wa分别为图像空间和物体空间的高度与宽度的比例;
如果va>wa,则
Figure BDA0001961626860000044
如果va≤wa,则
Figure BDA0001961626860000045
另外:
Zmax=max(|ZBoxMin|,|ZBoxMax|)
Figure BDA0001961626860000046
作为优选,步骤五中,设置背景颜色为黑色,关闭反走样,关闭光照,打开多边形深度偏移。
作为优选,步骤六的处理过程为:
步骤6.1初始化面的可见性标记数组;
步骤6.2初始化像素数组;
步骤6.3获取像素颜色;
步骤6.4设置ColorIndex=0;
步骤6.5获取三元色分量;
步骤6.6将三元色转换为颜色值Color;
步骤6.7判断颜色值是否为0;
如果颜色值是0,则直接将ColorIndex加3;
如果颜色值不是0,则将颜色值减1后赋给FaceIndex,再将面标记数组第FaceIndex分量记1后将ColorIndex加3;
步骤6.8判断ColorIndex是否小于颜色数量;
如果是,则返回步骤6.5;
如果否,则结束处理;
其中,FaceIndex是三角形来源面的索引序号,ColorIndex是颜色索引。
进一步地,在步骤七中,根据面的可见性标记数组判断是否可见,面的可见性标记数组中所有标记为1的面都是可见面,其它的是不可见面,将可见信息输入物体空间算法进行消隐计算。
本发明取得以下有益效果:
本发明是利用OPENGL的深度缓存技术,对物体空间消隐线计算进行加速的方法。深度缓存技术是图像空间进行消隐显示的关键技术,OPENGL进行深度缓存渲染时,一般使用集成了深度缓存算法的硬件来实现。由于有专门的显卡处理器和显示内存来进行相关计算,使用OPENGL进行消隐渲染效率极高。该方法利用OPENGL直接使用显卡硬件来进行消隐渲染,再利用渲染图像来确定消隐物体的可见信息,将可见信息输入物体空间消隐算法进行计算。既利用了图像空间效率高的优点,又可以通过物体空间算法获得解析表达的消隐线结果,为大型模型输出矢量二维图纸提供了高效的方法。
附图说明
图1是OPENGL初始化变量设置
图2是初始化渲染数据流程图
图3是视景体分量示意图
图4是获取显示数据流程图
图5是方法总体流程图
图中符号说明如下:
Xmin为视景体的X坐标最小值,Xmax为视景体的X坐标最大值,Ymin为视景体Y坐标最小值,Ymax为视景体Y坐标最大值,Znear为视景体Z坐标最小值,Zfar为视景体Z坐标最大值。
具体实施方式
以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本实施例披露一种利用OPENGL的物体空间消隐线计算加速方法,包括:
初始化渲染环境的步骤,
主要对OPENGL的渲染方式进行配置,如渲染设备设置、缓冲模式设置、像素格式等等。其主要设置属性如图所示。
初始化渲染数据的步骤,
根据要进行消隐计算的实体,转化为渲染数据,主要包括要显示体的离散三角形,以及三角形的顶点列表,同时还需要根据渲染三角形所在的面序号,设置渲染颜色。根据渲染数据,计算实体在三维空间的包围盒。
初始化图像空间的步骤,
根据实体在三维空间的尺寸、显示精度和计算机硬件的支持能力,确定渲染图像的大小,以及需要细分渲染图像的数量。然后根据图像的大小设置帧缓冲对像和深度缓冲区。
计算视景体范围的步骤,
对三维空间的包围盒按照细分的数量进行细分,计算渲染空间的子包围盒大小,按照子包围盒的大小与图像尺寸计算当前渲染视景体的尺寸。按照视景体尺寸设置投影观察区。
物体图像渲染的步骤,
设置绘制模式,设置背景颜色,将实体的渲染空间三角形的数据以及颜色数据输入OPENGL进行渲染绘制。
获取结果数据的步骤,
获取渲染图像的所有像素点数据,根据像素颜色获得对应的面的序号。在图像中显示的面即为可见面,没有对应颜色显示的面即为不可见面。
输入消隐算法进行消隐计算的步骤,
将可见面和不可见面的信息输入物体空间消隐线算法,可以直接进行消隐计算,无需再采用几何性质判断不可见面,只需要将与可见面相关联的线数据参与消隐计算即可,与可见面不相关联的线为不可见线,可以在计算中剔除。
以下结合说明书附图针对本实施例的具体实施步骤做出具体描述。
一种利用OPENGL的物体空间消隐线计算加速方法,包括:
步骤一:初始化渲染环境
初始化渲染环境是对OPENGL环境进行初始化设置,包括初始化显示窗体和初始化像素格式。
初始化显示窗体与操作系统相关,不同的操作系统有所区别,主要有设置窗体大小,获取窗口句柄。
初始化像素格式是对像素描述结构体中数据进行定义,该结构体中包括26个属性信息,本发明中只需对OPENGL必须的属性信息进行定义,如图1所示。主要包括以下信息:像素格式描述子结构的大小,PIXELFORMATDESCRIPTOR结构的版本,象素缓冲特性的标志位,象素数据类型是RGBA还是颜色索引,每个颜色缓冲区中颜色位数,深度缓冲区的深度,图层类型。
步骤二:初始化渲染数据
几何物体在进行OPENGL显示时,通常是将几何形体离散成三角网,再由OPENGL进行三角面片渲染。初始化渲染数据首先需要将输入的几何实体进行离散,几何数据离散的算法与实体模型的数据结构有关,不同的实体模型数据结构,所对应的离散算法也不尽相同,几何离散算法已经属于成熟技术,因此在本发明中不进行特殊说明。为了避免OPENGL渲染时对相机进行移动,将离散数据由世界坐标系变换到观察坐标系中,变换后的数据观察方向为Z轴的负方向;然后根据几何实体的离散数据,准备好显示数据,其中包括三角形顶点坐标,以及顶点对应的颜色分量。顶点的颜色数据应该与所属三角形对应的面序号相关,对应关系如下:
Color=FaceIndex+1
Red=Color&0xff
Green=Color>>8&0xff
Blue=Color>>16&0xff
其中,FaceIndex是三角形来源面的索引序号,Color为渲染颜色,Red为颜色值的红色分量,Green为颜色值的绿色分量,Blue为颜色值的蓝色分量,0xff为十六进制数值,&、>>均为位运算符。
另外,还需要根据所有顶点数据,计算渲染数据的包围盒,以便于后续计算渲染视景体大小。该步骤的流程如图2所示。
步骤三:初始化图像空间
获得显示实体的包围盒后,可以确定渲染图像在空间的尺寸,由外部输入的显示精度,可以计算出渲染图像所需要的像素尺寸,由于计算机显卡硬件的处理能力有限,像素尺寸不可能无限大,因此外部需要根据硬件水平,设置最大的像素尺寸。当渲染图像像素尺寸大于硬件能力时,需要对渲染图像进行细分,采用多幅图像来渲染解决此问题。具体计算细节如下:
Figure BDA0001961626860000081
Figure BDA0001961626860000082
Figure BDA0001961626860000083
Figure BDA0001961626860000084
其中:XBoxMax和XBoxMin分别为实体包围盒X坐标的最大和最小值,XBoxSize为包围盒X坐标的宽度,YBoxMax和YBoxMin分别为实体包围盒Y坐标的最大和最小值,YBoxSize为包围盒Y坐标的宽度,Ppix为每个像素在物体空间的大小,Wpic为所需图像的宽度,Hpic为所需图像的高度,Mmaxpix是计算机所支持的最大像素数量,Nwidth为宽度方向所需要细分的次数,Nheight为高度方向所需要细分的次数,Wsub为细分的图像的宽度,Hsub为细分图像的高度。
确定图像尺寸及细分数量后,需要据图像的大小设置帧缓冲对像和深度缓冲区,并打开深度检测。
步骤四:计算视景体范围
首先按照图像细分的数量,计算子包围盒的大小。
Figure BDA0001961626860000091
其中:XSubMin为细分子包围盒X方向上的最小值,YSubMin为细分子包围盒Y方向上的最小值,XSubMax为细分子包围盒X方向上的最在值,YSubMax为细分子包围盒Y方向上的最大值。
而子包围盒的Z坐标与全包围盒相同。
视景体的数据如图3所示,具体数据计算如下:
Figure BDA0001961626860000092
Figure BDA0001961626860000093
其中:va和wa分别为图像空间和物体空间的高度与宽度的比例。
如果va>wa,则
Figure BDA0001961626860000094
如果va≤wa,则
Figure BDA0001961626860000095
另外:
Zmax=max(|ZBoxMin|,|ZBoxMax|)
Figure BDA0001961626860000096
步骤五:物体图像渲染
物体图像渲染即将离散顶点数据和颜色数据输入OPENGL进行渲染,渲染前需要设置背景颜色为黑色,关闭反走样,关闭光照,打开多边形深度偏移。
步骤六:获取结果数据
通过OPENGL获取渲染图像像素的功能,遍历所有像素点,将非0的颜色值与面的序号对应,可获得可见面的信息。具体流程如图4所示。
步骤七:输入消隐算法进行消隐计算
通过以上步骤,面的可见性标记数组中,所有标记为1的面都是可见面,其它的是不可见面,最后将可见信息输入物体空间算法进行消隐计算。由于物体空间算法为已现有技术中成熟的算法,因此不必进行详细说明。
以上所述仅为本发明的较佳实施例,并非因此限定本发明的专利保护范围,本发明还可以对上述各步骤进行改进,或者是采用类似技术进行替换。故凡运用本发明的说明书及图示内容所作的等效变化,或直接或间接运用于其他相关技术领域均同理皆包含于本发明所涵盖的范围内。

Claims (10)

1.一种利用OPENGL的物体空间消隐线计算加速方法,其特征在于,包括以下步骤:
步骤一、初始化渲染环境;
对OPENGL的渲染方式进行配置,包括渲染设备设置、缓冲模式设置、像素格式;
步骤二、初始化渲染数据;
根据要进行消隐计算的几何实体,生成渲染数据,包括要显示体的离散三角形,以及三角形的顶点列表;
根据渲染三角形所在的面序号,设置渲染颜色;
根据渲染数据,计算实体在三维空间的包围盒;
步骤三、初始化图像空间;
根据实体在三维空间的尺寸、显示精度和计算机硬件的支持能力,确定渲染图像的大小,以及需要细分渲染图像的数量;
根据图像的大小设置帧缓冲对像和深度缓冲区;
步骤四、计算视景体范围;
对三维空间的包围盒按照细分的数量进行细分,计算渲染空间的子包围盒大小,按照子包围盒的大小与图像尺寸计算当前渲染视景体的尺寸;
按照视景体尺寸设置投影观察区;
步骤五、物体图像渲染;
设置绘制模式,设置背景颜色,将实体的渲染空间三角形的数据以及颜色数据输入OPENGL进行渲染绘制;
步骤六、获取结果数据;
获取渲染图像的所有像素点数据,根据像素颜色获得对应的面的序号;
在图像中显示的面即为可见面,没有对应颜色显示的面即为不可见面;
步骤七、进行消隐计算;
将可见面和不可见面的信息输入物体空间消隐线算法,直接进行消隐计算;
与可见面不相关联的线为不可见线,在计算中剔除。
2.根据权利要求1所述的一种利用OPENGL的物体空间消隐线计算加速方法,其特征在于:
步骤一中,初始化渲染环境包括初始化显示窗体和初始化像素格式;
初始化显示窗体与操作系统相关,包括设置窗体大小,获取窗口句柄;
初始化像素格式是对像素描述结构体中数据进行定义,只需对OPENGL必须的属性信息进行定义,包括以下信息:像素格式描述子结构的大小、PIXELFORMATDESCRIPTOR结构的版本、象素缓冲特性的标志位、象素数据类型是RGBA还是颜色索引、每个颜色缓冲区中颜色位数、深度缓冲区的深度和图层类型。
3.根据权利要求1所述的一种利用OPENGL的物体空间消隐线计算加速方法,其特征在于:
步骤二中,将几何实体离散成三角网,再由OPENGL进行三角面片渲染;
首先将输入的几何实体进行离散;
然后根据几何实体的离散数据,准备好显示数据,其中包括三角形顶点坐标,以及顶点对应的颜色分量;
根据所有顶点数据,计算渲染数据的包围盒。
4.根据权利要求3所述的一种利用OPENGL的物体空间消隐线计算加速方法,其特征在于:
将输入的几何实体进行离散后,将离散数据由世界坐标系变换到观察坐标系中,变换后的数据观察方向为Z轴的负方向。
5.根据权利要求1所述的一种利用OPENGL的物体空间消隐线计算加速方法,其特征在于:
步骤三具体包括:
获得显示实体的包围盒后,确定渲染图像在空间的尺寸;
根据外部输入的显示精度,计算出渲染图像所需要的像素尺寸;
根据计算机显卡硬件的处理能力设置最大的像素尺寸;
确定图像尺寸及细分数量后,需要据图像的大小设置帧缓冲对像和深度缓冲区,并打开深度检测。
6.根据权利要求5所述的一种利用OPENGL的物体空间消隐线计算加速方法,其特征在于:
根据计算机显卡硬件的处理能力设置最大的像素尺寸过程中,当渲染图像像素尺寸超出硬件处理能力时,对渲染图像进行细分,具体计算方法为:
Figure FDA0001961626850000021
Figure FDA0001961626850000022
Figure FDA0001961626850000023
Figure FDA0001961626850000031
其中:XBoxMax和XBoxMin分别为实体包围盒X坐标的最大和最小值,XBoxSize为包围盒X坐标的宽度,YBoxMax和YBoxMin分别为实体包围盒Y坐标的最大和最小值,YBoxSize为包围盒Y坐标的宽度,Ppix为每个像素在物体空间的大小,Wpic为所需图像的宽度,Hpic为所需图像的高度,Mmaxpix是计算机所支持的最大像素数量,Nwidth为宽度方向所需要细分的次数,Nheight为高度方向所需要细分的次数,Wsub为细分的图像的宽度,Hsub为细分图像的高度。
7.根据权利要求1所述的一种利用OPENGL的物体空间消隐线计算加速方法,其特征在于:
步骤四中,首先按照图像细分的数量,计算子包围盒的大小;
Figure FDA0001961626850000032
其中:XSubMin为细分子包围盒X方向上的最小值,YSubMin为细分子包围盒Y方向上的最小值,XSubMax为细分子包围盒X方向上的最在值,YSubMax为细分子包围盒Y方向上的最大值;
子包围盒的Z坐标与全包围盒相同;
视景体的数据计算方法为:
Figure FDA0001961626850000033
Figure FDA0001961626850000034
其中:va和wa分别为图像空间和物体空间的高度与宽度的比例;
如果va>wa,则
Figure FDA0001961626850000035
如果va≤wa,则
Figure FDA0001961626850000041
另外:
Zmax=max(|ZBoxMin|,|ZBoxMax|)
Figure FDA0001961626850000042
8.根据权利要求1所述的一种利用OPENGL的物体空间消隐线计算加速方法,其特征在于:
步骤五中,设置背景颜色为黑色,关闭反走样,关闭光照,打开多边形深度偏移。
9.根据权利要求1所述的一种利用OPENGL的物体空间消隐线计算加速方法,其特征在于:
步骤六的处理过程为:
步骤6.1初始化面的可见性标记数组;
步骤6.2初始化像素数组;
步骤6.3获取像素颜色;
步骤6.4设置ColorIndex=0;
步骤6.5获取三元色分量;
步骤6.6将三元色转换为颜色值Color;
步骤6.7判断颜色值是否为0;
如果颜色值是0,则直接将ColorIndex加3;
如果颜色值不是0,则将颜色值减1后赋给FaceIndex,再将面标记数组第FaceIndex分量记1后将ColorIndex加3;
步骤6.8判断ColorIndex是否小于颜色数量;
如果是,则返回步骤6.5;
如果否,则结束处理;
其中,FaceIndex是三角形来源面的索引序号,ColorIndex是颜色索引。
10.根据权利要求9所述的一种利用OPENGL的物体空间消隐线计算加速方法,其特征在于:
在步骤七中,根据面的可见性标记数组判断是否可见,面的可见性标记数组中所有标记为1的面都是可见面,其它的是不可见面,将可见信息输入物体空间算法进行消隐计算。
CN201910085408.6A 2019-01-29 2019-01-29 一种利用opengl的物体空间消隐线计算加速方法 Active CN109829962B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910085408.6A CN109829962B (zh) 2019-01-29 2019-01-29 一种利用opengl的物体空间消隐线计算加速方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910085408.6A CN109829962B (zh) 2019-01-29 2019-01-29 一种利用opengl的物体空间消隐线计算加速方法

Publications (2)

Publication Number Publication Date
CN109829962A CN109829962A (zh) 2019-05-31
CN109829962B true CN109829962B (zh) 2022-11-25

Family

ID=66862778

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910085408.6A Active CN109829962B (zh) 2019-01-29 2019-01-29 一种利用opengl的物体空间消隐线计算加速方法

Country Status (1)

Country Link
CN (1) CN109829962B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111027113B (zh) * 2019-12-09 2023-06-09 广联达科技股份有限公司 基于建筑模型生成平面轮廓图的方法、系统和存储介质
CN111260750B (zh) * 2020-01-08 2023-07-07 广东三维家信息科技有限公司 openFL绘制矢量图形的处理方法、装置及电子设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102722861A (zh) * 2011-05-06 2012-10-10 新奥特(北京)视频技术有限公司 一种基于cpu的图形渲染引擎及实现方法
US20160155261A1 (en) * 2014-11-26 2016-06-02 Bevelity LLC Rendering and Lightmap Calculation Methods
CN108573524B (zh) * 2018-04-12 2022-02-08 东南大学 基于渲染管线的交互式实时自由立体显示方法

Also Published As

Publication number Publication date
CN109829962A (zh) 2019-05-31

Similar Documents

Publication Publication Date Title
JP6563048B2 (ja) スクリーンの位置によって異なる解像度のターゲットの複数レンダリングのテクスチャ・マッピングの傾き調整
CN104268922B (zh) 一种图像渲染方法及图像渲染装置
CN111508052B (zh) 三维网格体的渲染方法和装置
US7348989B2 (en) Preparing digital images for display utilizing view-dependent texturing
CN102768765B (zh) 实时点光源软阴影渲染方法
CN1581234A (zh) 使用多遍形成方式的图形基元成形装置及方法
CN104331918A (zh) 基于深度图实时绘制室外地表遮挡剔除以及加速方法
CN106558017B (zh) 球形显示图像处理方法及系统
CN104318605B (zh) 矢量实线与三维地形的并行贴合渲染方法
JP3626144B2 (ja) 立体オブジェクトデータからの漫画的表現の2次元画像の生成方法および生成プログラム
CN104103089A (zh) 一种基于图像屏幕空间的实时软阴影实现方法
KR20120104071A (ko) 입체영상 시각효과 처리 방법
CN109829962B (zh) 一种利用opengl的物体空间消隐线计算加速方法
CN109461197B (zh) 一种基于球面uv和重投影的云实时绘制优化方法
CN110706325A (zh) 一种三维海底环境实时动态渲染方法和渲染系统
CN104517313B (zh) 基于屏幕空间的环境光遮蔽的方法
CN115103134A (zh) 一种led虚拟拍摄切割合成方法
KR100453529B1 (ko) 제트 좌표값에 의거하여 알파값을 제어하는 3차원그래픽스 묘화장치 및 그 방법
US11423618B2 (en) Image generation system and method
US11436797B2 (en) Image generation system and method
CN111127589B (zh) 顾及线宽一致性的矢量地图圆形虚线符号绘制方法
CN111652807B (zh) 眼部的调整、直播方法、装置、电子设备和存储介质
CN115035231A (zh) 阴影烘焙方法、装置、电子设备和存储介质
JP2023527438A (ja) リアルタイム深度マップを用いたジオメトリ認識拡張現実効果
CN111739074A (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