一种三维图形渲染的方法和装置与流程

文档序号:13209369阅读:110来源:国知局
技术领域本发明涉及图形处理领域,具体而言,涉及一种三维图形渲染的方法和装置。

背景技术:
随着高分辨率图形显示技术的普及,大分辨率的图形显示设备发展迅速,与之相伴的就是用户对软件应用分辨率的需求不断提升。然而由此所产生的结果就是,硬件系统的负载加大,进而使得设备的功耗不断提升,最终使得设备的待机时间缩短、噪音增加、故障率增大,设备的使用成本也随之提高。究其原因,主要在于视频程序的渲染方法过于落后。一个三维场景的绘制或者重载往往需要载入整个场景进行实时运算,如此一来,即使背景场景没有变化,也会占用大量的系统资源,从而导致系统的有效渲染率降低。针对上述的问题,目前尚未提出有效的解决方案。

技术实现要素:
本发明实施例提供了一种三维图形渲染的方法和装置,以至少解决现有三维图形渲染效率低的技术问题。根据本发明实施例的一个方面,提供了一种三维图形渲染的方法,包括:读取三维图形的建模数据;根据所述建模数据在计算机内存虚拟出的数据空间中建立几何模型;获取渲染属性数据,并通过所述渲染属性数据对所述几何模型进行渲染;根据渲染后的几何模型完成所述三维图形的渲染。根据本发明实施例的另一方面,还提供了一种三维图形渲染的装置,包括:读取单元,用于读取三维图形的建模数据;建立单元,用于根据所述建模数据在计算机内存虚拟出的数据空间中建立几何模型;模型渲染单元,用于获取渲染属性数据,并通过所述渲染属性数据对所述几何模型进行渲染;图形渲染单元,用于根据渲染后的几何模型完成所述三维图形的渲染。在本发明实施例中,通过读取三维图形的建模数据;根据该建模数据在计算机内存虚拟出的数据空间中建立几何模型;获取渲染属性数据,并通过该渲染属性数据对该几何模型进行渲染;根据渲染后的几何模型完成该三维图形的渲染,这样,通过将三维图形渲染与内存数据结构映射相互关联,在计算机内存中所虚拟出的数据空间中模拟绘制三维几何模型,将三维物体的存在模式从单纯的数据-数学运算模式,转换为更为接近现实存在状态下的立体几何结构,从而大幅度的提升三维图形渲染的效率,进而解决了现有三维图形渲染效率低的技术问题。附图说明为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是根据本发明实施例的一种可选的三维图形渲染方法的流程示意图;图2是根据本发明实施例的一种可选的三维图形渲染装置的结构示意图;图3是根据本发明实施例的一种可选的三维图形渲染装置的结构示意图;图4是根据本发明实施例的一种可选的三维图形渲染装置的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。根据本发明实施例,提供了一种三维图形渲染的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。图1是本发明实施例提供的一种三维图形渲染方法,如图1所示,该方法包括如下步骤:S101、读取三维图形的建模数据。其中,该建模数据可以包括该三维图形的几何结构和空间坐标,因此本步骤可以读取该三维图形的几何结构和空间坐标。需要说明的是,可以调用函数MDF_Read3DModel()读取建模数据,该建模数据包括分辨率、三维建模信息,以及这些信息的几何结构,空间坐标等。S102、根据该建模数据在计算机内存虚拟出的数据空间中建立几何模型。可选地,分配该数据空间,并在该数据空间内配置与该几何结构和该空间坐标对应的结构建立信息,并根据该结构建立信息在该数据空间中建立几何结构。其中,该结构建立信息包括该几何模型在该数据空间的几何结构和空间坐标。需要说明的是,可以调用函数MDF_CreateDataSpace(),设定数据空间体积和基本规则,配置空间坐标,以及多维度作用模式等,从而完成分配数据空间。调用函数MDF_CreateGeometry(),根据所读取到的三维建模数据建立数据空间中的几何结构,并为这些结构赋予相应的空间坐标,从而完成在该数据空间内配置与该几何结构和该空间坐标对应的结构建立信息。S103、获取渲染属性数据,并通过该渲染属性数据对该几何模型进行渲染。在本步骤中,可以获取用户设置的环境信息,并根据该环境信息生成该渲染属性数据。其中,该环境信息包括光源的位置和角度(在数据空间之中,几何结构的色彩与可见性都与光源的位置和角度相关),观察者的位置和角度(在数据空间中,观察者的位置和角度决定了所能看到的几何模型部位和相应的可见光范围)以及主视角场景(该渲染过程随着用户操作与场景的变化而实时更新三维图形的渲染结果)。在得到上述环境信息后,根据该环境信息生成渲染属性数据,该渲染属性数据可以包括:1、物理属性(该属性主要用来为三维几何结构的色彩填充和物理运算等过程提供支持);其中,可以通过物理运算进程完成对空间几何结构的色彩渲染和物理运算等处理,可以在不改变几何结构基本物理性状的前提下,实时改变几何结构的可见性或物理特征。2、化学属性(该属性主要用来对几何结构之间的微观互动过程提供支持,也是提升物理运算精确度的重要组成部分);其中,可以通过化学运算进程处理微观级别上的几何结构的性状变更,如:温度的变化可以导致水结构的分子变化,从而使其形成气体、液体、固体等不同的状态。3、时空属性(该属性用于设定几何结构的空间和时间方位,可在场景转换、沙盘互动、AI行为判定等过程中作为参考依据)其中,无论是物理运算进程还是化学运算进程,都会产生时间和空间上的变更,从而使得几何模型的结构与方位发生改变,因此可以通过时空运算进程处理时间和空间上的变更导致的几何模型的结构与方位的改变。需要说明的是,可以通过调用函数MDF_FillGeometryProperty()为数据空间中的几何模型添加相应的属性,该函数包括以下三个子函数:MDF_FillPhysicsProperty();,MDF_FillChemistryProperty()和MDF_FillSpaceTimeProperty()。其中,MDF_FillPhysicsProperty()用于添加物理属性,MDF_FillChemistryProperty()用于添加化学属性,MDF_FillSpaceTimeProperty()用于添加时空属性。可以通过调用函数MDF_SetGeometryMDProperty()对空间属性、时间属性、物理属性、化学属性等渲染属性数据进行设置。可以调用函数MDF_RunGeometryMDMaintain(),启动运算进程,该函数包括如下三个子过程:MDF_RunPhysicsMDMaintain(),MDF_RunChemistryMDMaintain()和MDF_RunSpaceTimeMDMaintain()。其中,MDF_RunPhysicsMDMaintain()为物理运算进程,MDF_RunChemistryMDMaintain()为化学运算进程,MDF_RunSpaceTimeMDMaintain()为时空运算进程。可以通过调用函数MDF_UpdateLightSource()设置光源位置和角度,通过调用函数MDF_UpdateRoleView()更新主视角方位。可选地,在该通过该渲染属性数据对该几何模型进行渲染后,接收环境更新信息;根据该环境更新信息更新该环境信息,并根据更新后的环境信息对该几何模型进行渲染。其中,当环境信息发生变更时,如光源的位置或者角度发生变更;或者,主视角方位发生变更,则根据更新后的环境信息重新生成渲染属性数据,并根据渲染属性数据重新渲染几何模型。可选地,在该通过该渲染属性数据对该几何模型进行渲染后,根据渲染后的几何模型完成该三维图形的渲染前,还可以接收渲染完成消息,并根据该渲染完成消息输出渲染后的几何模型。S104、根据渲染后的几何模型完成该三维图形的渲染。通过采用上述方法,将三维图形渲染与内存数据结构映射相互关联,在计算机内存中所虚拟出的数据空间中模拟绘制三维几何模型,将三维物体的存在模式从单纯的数据-数学运算模式,转换为更为接近现实存在状态下的立体几何结构,从而大幅度的提升三维图形渲染的效率,进而解决了现有三维图形渲染效率低的技术问题。图2为本发明实施例提供的一种三维图形渲染的装置,如图2所示,该装置包括:读取单元201,用于读取三维图形的建模数据;建立单元202,用于根据该建模数据在计算机内存虚拟出的数据空间中建立几何模型;模型渲染单元203,用于获取渲染属性数据,并通过该渲染属性数据对该几何模型进行渲染;图形渲染单元204,用于根据渲染后的几何模型完成该三维图形的渲染。可选地,该读取单元201用于通过以下步骤执行读取三维图像的建模数据:读取该三维图形的几何结构和空间坐标;该执行根据该建模数据在计算机内存虚拟出的数据空间中建立几何模型:分配该数据空间,并在该数据空间内配置与该几何结构和该空间坐标对应的结构建立信息;其中,该结构建立信息包括该几何模型在该数据空间的几何结构和空间坐标;根据该结构建立信息在该数据空间中建立几何结构。可选地,该模型建立单元203用于通过以下步骤执行获取渲染属性数据:获取用户设置的环境信息;根据该环境信息生成该渲染属性数据。可选地,如图3所示,该装置还包括:接收单元205,用于在通过该渲染属性数据对该几何模型进行渲染后,接收环境更新信息;更新单元206,用于根据该环境更新信息更新该环境信息;该模型渲染单元203,还用于根据更新后的环境信息对该几何模型进行渲染。可选地,如图4所示,该装置还包括:模型输出单元207,用在通过该渲染属性数据对该几何模型进行渲染后,根据渲染后的几何模型完成该三维图形的渲染前,接收渲染完成消息,并根据该渲染完成消息输出渲染后的几何模型。通过采用上述装置,将三维图形渲染与内存数据结构映射相互关联,在计算机内存中所虚拟出的数据空间中模拟绘制三维几何模型,将三维物体的存在模式从单纯的数据-数学运算模式,转换为更为接近现实存在状态下的立体几何结构,从而大幅度的提升三维图形渲染的效率,进而解决了现有三维图形渲染效率低的技术问题。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1