CN103679793B - 一种渲染方法及设备 - Google Patents

一种渲染方法及设备 Download PDF

Info

Publication number
CN103679793B
CN103679793B CN201310752469.6A CN201310752469A CN103679793B CN 103679793 B CN103679793 B CN 103679793B CN 201310752469 A CN201310752469 A CN 201310752469A CN 103679793 B CN103679793 B CN 103679793B
Authority
CN
China
Prior art keywords
dynamic load
mask
intersecting area
mask information
mask regions
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
CN201310752469.6A
Other languages
English (en)
Other versions
CN103679793A (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.)
Guangzhou Boguan Information Technology Co Ltd
Original Assignee
Guangzhou Boguan Information Technology 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 Guangzhou Boguan Information Technology Co Ltd filed Critical Guangzhou Boguan Information Technology Co Ltd
Priority to CN201310752469.6A priority Critical patent/CN103679793B/zh
Publication of CN103679793A publication Critical patent/CN103679793A/zh
Application granted granted Critical
Publication of CN103679793B publication Critical patent/CN103679793B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明的实施方式提供了一种渲染方法。该方法包括保存动态加载的对象的遮罩信息;确定需要进行遮罩计算的目标对象;获取所述遮罩信息,根据所述遮罩信息确定动态加载的对象的遮罩区域;计算所述目标对象占据的区域与所述动态加载的对象的遮罩区域的相交区域;以及,绘制所述动态加载的对象的遮罩区域中的所述相交区域,从而把所述目标对象的所述相交区域遮挡住。本发明的实施方式还提供了一种渲染设备。本发明的实施方式可以使渲染效果与真实效果一致。

Description

一种渲染方法及设备
技术领域
本发明的实施方式涉及电子数据的处理技术领域,更具体地,本发明的实施方式涉及一种渲染方法及设备。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
电子数据可通过渲染操作呈现到显示设备上。通常而言,需要渲染到显示设备上的电子数据不仅具有空间特性(该特性表明新渲染的对象在显示设备上会占据一定的区域),而且还具有层次特性(该特性表明新渲染的对象可能与其他对象之间存在视线上的前后关系)。在具有空间特性和层次特性的对象需要渲染到显示设备上时,可能出现新渲染对象与其他对象之间的“遮罩现象”,即位于下层的对象所占据的区域遮盖住位于其上层的其他对象所占据的部分或全部区域。为确保显示设备上显示的“遮罩效果”与实际的“遮罩效果”的一致性,在渲染对象时必须正确地绘制对象之间的遮罩区域。
在现有技术中,存在一种渲染方法,该方法在渲染对象之前,每个对象在显示设备上将要显示的相对位置和相互之间的遮罩关系已经固定,正式渲染时直接按照预先确定的位置和遮罩关系一次性渲染到显示设备上,这种方式能够较好地确保显示在显示设备上的对象与真实场景一致。
发明内容
但是,上述渲染方式属于对“静态”对象的渲染,这种一次性处理完所有对象和遮罩信息的情况下,通常不会出现“遮罩”错误。而当在显示设备上动态加载原本没有的对象后,从而对象之间出现新的位置关系时,由于在静态处理过程中没有明确动态加载的对象的遮罩信息,直接渲染将可能导致两个对象之间的位置关系出现错误,使得渲染的效果与真实的效果不一致。
为此,非常需要一种改进的渲染机制,以使在动态加载对象后进行渲染时不产生遮罩错误,保持渲染效果与真实效果的一致性。
在本上下文中,本发明的实施方式期望提供一种渲染方法和渲染设备。
在本发明实施方式的第一方面中,提供的渲染方法例如可以包括:
保存动态加载的对象的遮罩信息;
确定需要进行遮罩计算的目标对象;
获取所述遮罩信息,根据所述遮罩信息确定动态加载的对象的遮罩区域;
计算所述目标对象占据的区域与所述动态加载的对象的遮罩区域的相交区域;以及
绘制所述动态加载的对象的遮罩区域中的所述相交区域,从而把所述目标对象的所述相交区域遮挡住。
在本发明实施方式的第二方面中,提供了一种渲染设备,该设备例如可以包括:保存装置、确定装置、获取装置、第一运算装置、第二运算装置和绘制装置,其中:
所述保存装置,用于保存动态加载的对象的遮罩信息;
所述确定装置,用于确定需要进行遮罩计算的目标对象;
所述获取装置,用于获取所述遮罩信息;
所述第一运算装置,用于根据所述遮罩信息确定动态加载的对象的遮罩区域;
所述第二运算装置,用于计算所述目标对象占据的区域与所述动态加载的对象的遮罩区域的相交区域;
所述第一绘制装置,用于绘制所述动态加载的对象的遮罩区域中的所述相交区域,从而把所述目标对象的所述相交区域遮挡住。
本发明实施方式将动态加载的对象的遮罩信息进行保存,在确定好目标对象后,计算目标对象占据的区域与动态加载对象的遮罩区域的相交区域,然后将动态加载对象的遮罩区域中的相交区域绘制出来。本发明实施例方式绘制的区域为动态加载对象与目标对象的相交区域,减少了绘制工作量,有利于提高渲染效率。而且,本发明实施例方式绘制的相交区域为动态加载对象的遮罩区域中的相交区域,能够将目标对象的相交区域遮挡住,从而正确反映了动态加载对象与目标对象之间的遮罩关系,使其在显示设备上渲染效果与真实效果一致。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
图1示意性地示出了适于实现本发明实施方式的示例性计算系统100的框图;
图2示意性地示出了本发明适用的一个具体应用场景;
图3示意性地示出了本发明渲染方法的实施例流程图;
图4示意性地示出了本发明渲染设备的组成结构图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
图1示出了适于实现本发明实施方式的进行渲染操作的示例性的计算系统100的框图。如图1所示,计算系统100可以包括:中央处理单元(CPU)101、随机存取存储器(RAM)102、只读存储器(ROM)103、系统总线104、硬盘控制器105、键盘控制器106、串行接口控制器107、并行接口控制器108、显示控制器109、硬盘110、键盘111、串行外部设备112、并行外部设备113和显示器114。这些设备中,与系统总线104耦合的有CPU101、RAM102、ROM103、硬盘控制器105、键盘控制器106、串行接口控制器107、并行接口控制器108和显示控制器109。硬盘110与硬盘控制器105耦合,键盘111与键盘控制器106耦合,串行外部设备112与串行接口控制器107耦合,并行外部设备113与并行接口控制器108耦合,以及显示器114与显示控制器109耦合。应当理解,图1所述的结构框图仅仅是为了示例的目的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况增加或减少某些设备。
本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
在本文中,需要理解的是,所涉及的术语“动态加载的对象”是相对于静态加载对象而言的,静态加载对象在电子数据生成时一次性加载到显示设备上,而动态加载对象是在静态加载对象加载完成后的某个时候需要加载到显示设备上的对象;所涉及的术语“遮罩区域”是加载对象上的一个区域,属于加载对象的一个子区域。此外,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分(比如,后续将要提到的“第一”绘制装置、“第二”绘制装置等),而不具有任何限制含义。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
发明概述
本发明人发现,在已显示有静态对象的显示设备上,如果动态添加新对象从而两个对象之间出现新的位置关系时,如果不正确处理两个对象之间的遮罩关系,将使它们渲染出来的效果与真实的效果不一致。
两个对象之间的遮罩关系反映了一个对象遮挡另一个对象的情况。当一个对象(甲对象)的相对位置确定后,如果将另一个对象(乙对象)渲染到甲对象所在的(局部)区域,如果甲对象与乙对象之间没有遮罩关系,即甲对象的该区域不是遮罩区域,那么乙对象位于甲对象前面(以观察点为基点),将甲对象的某区域遮挡住。如果甲对象与乙对象之间有遮罩关系,即甲对象的该区域是遮罩区域,那么乙对象位于甲对象的该区域的后面(以观察点为基点),即甲对象的该区域遮挡住乙对象。
因此,为实现各种对象的正确渲染,需要根据遮罩信息进行遮罩计算。当存在动态加载的对象时,本发明根据保存的动态加载的对象的遮罩信息,计算目标对象占据的区域与动态加载对象的遮罩区域的相交区域,然后绘制出动态加载对象的遮罩区域中的相交区域。这种方式一方面使绘制的区域为动态加载对象与目标对象的相交区域而不是各自全部的区域,避免了重复绘制或大面积的绘制,减少了绘制工作量,有利于提高渲染效率。另一方面,绘制的相交区域为动态加载对象的遮罩区域中的相交区域,能够将目标对象的相交区域遮挡住,从而正确反映了动态加载对象与目标对象之间的遮罩关系,使其在显示设备上渲染效果与真实效果一致。
在介绍了本发明的基本思路之后,下面具体介绍本发明的各种非限制性实施方式。
应用场景总览
参考图2,该图示出了本发明的一种示例性的应用场景。该场景反映了本发明应用于电子地图中的情况。在该场景中,动态加载的对象为一座房子21,该房子区别于事先已经固定在地图上的静态对象,事先固定在地图上的静态的遮罩信息已经加载完毕,而该房子的遮罩信息将作为以渲染方法的一个步骤被保存于某个存储设备之中,其还没有与其他对象之间的遮罩信息发生直接的关系。在该场景中作为目标对象的是一个可以自由移动的人22。由于人的可移动性,作为目标对象的人和动态加载对象之间的关系将可能随着人的移动而发生变化:当人远离该房子时,房子和人各自独立,不发生遮罩关系;当人朝着该房子移动时,人所在的区域将逐渐与房子所占据的区域可能出现相交现象,将可能发生遮罩关系;当人移动过房子时,房子和人各自对立,也不发生遮罩关系。在人所在的区域与房子所在的区域存在相交时,可能出现两种具体情形:一是人从房子前面走过(参见图中24所指示的线路),那么房子的某些区域将被人遮挡住,另一种是人从房子后面走过(参见图中23所指示的线路),那么“人”的某些(或全部)区域将被房子遮挡住(取决于房子的遮挡信息)。
上述应用场景突出了一个动态加载对象与一个可移动的目标对象之间的遮罩关系,但是,两个对象之间的遮罩关系并不限于上述场景之下,本领域技术人员可以从本质上进行多方面的延伸,从而扩展本发明实施例方式的具体应用范围。比如,上述场景中遮罩关系的出现与两个对象在电子地图上的相对位置关系的变化相关联,那么,在别的应用场景中,如果出现一个对象保持不动(比如先前动态加载的对象),另一个对象新动态加载到先前动态加载的对象所占据的区域,或者一个对象的移动速度大于另一个对象的速度等情况,相对位置关系也会发生变化,从而也可能出现需要进行处理的遮罩关系,这些应用场景下,使用本发明实施例方式同样可以解决“遮罩效果”与“真实效果”一致性的问题。
还比如,本发明实施方式还可以应用于游戏画面之中。在各种游戏中,经常会出现模拟真实场景的需求,在真实场景中出现的一个对象与另一个对象之间的遮挡情况,需要一致性地表达到游戏画面场景中,这样可以提高游戏画面的真实度,优化玩家的游戏体验。
示例性方法
下面结合图2的应用场景,参考图3来描述根据本发明示例性的渲染方法的实施。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于其他可以适用的任何场景。
根据图3示出的本发明的一个示例性的渲染方法实施例,渲染方法可以包括如下步骤:
步骤S301:保存动态加载的对象的遮罩信息;
动态加载的对象的遮罩信息的保存区别于静态对象的遮罩信息的保存。在现有技术中,加载对象的遮罩信息是分块分散存储的。以本实施例的应用于电子地图的场景为例,电子地图被按照预定大小划分为多个块,每个块存储位于该块内的加载对象和遮罩信息,块内的遮罩信息在一次性渲染时已得到体现,块外的遮罩信息相互独立,不发生关系。本实施例将动态加载的对象的遮罩信息进行统一保存,不再区分块。在本实施例中,动态加载对象为房子。
步骤S302:确定需要进行遮罩计算的目标对象;
以前述的应用场景为例,可以将可自由移动的人确定为需要进行遮罩计算的目标对象,原因是人一直在走动,可能会走到动态加载的对象的遮罩区域中。
当然,也可以将最新要动态加载的对象确定为需要进行遮罩计算的目标对象,因为该最新要动态加载的对象可能会加载到之前动态加载的对象的遮罩区域中。
步骤S303:获取所述遮罩信息,根据所述遮罩信息确定动态加载的对象的遮罩区域;
遮罩信息是对遮罩区域的刻画,通过遮罩信息可以确定动态加载的对象的遮罩区域。一个对象是否会与其他对象发生遮罩关系与两个对象之间的位置关系有关,当两个对象位置上相差较远,无论从其中一个对象的哪个角度观察(或者从预先设定的一个角度观察)不发生遮挡时,那么这两个对象将不会发生遮罩关系,这种情况下,一个对象的遮罩信息对另一个对象而言,实际上没有多大意义。当从一个预先设定的角度观察两个对象存在部分或全部的遮挡时,对象的遮罩信息即能反映两者的遮罩关系,而遮罩关系是通过遮罩区域的相交与否来体现的,一个对象的遮罩区域之外的部分与另一个对象不会发生遮罩关系。因此,从遮罩信息中确定遮罩区域为通过遮罩计算来确定具体的遮罩情况提供了基础。下面示例性地说明具体确定遮罩区域的方法,假设一个动态加载的物体为矩形,物体的遮罩区域是它的一个子矩形,遮罩信息描述了该子矩形的左上角相对于整个矩形物体的左上角偏移是(dx,dy),子矩形的大小是(w,h)。当加载该矩形物体时,矩形物体的左上角在电子地图上的位置是(x,y),那么遮罩区域由(x+dx,y-dy)确定。
步骤S304:计算所述目标对象占据的区域与所述动态加载的对象的遮罩区域的相交区域。
通过前述步骤确定好目标对象和动态加载对象的遮罩区域后,即可进行目标对象占据的区域与遮罩区域的相交区域的计算。该步骤实际上区域裁剪过程,即将遮罩区域中不与目标对象所占据的区域相交的部分给裁剪掉,以及将目标对象所占据的区域中不与遮罩区域相交的部分给裁剪掉,剩下两个共同的区域(即相交区域)。这个共同区域真实代表了两个对象之间的遮罩关系以及遮挡区域的大小面积。
步骤S305:绘制所述动态加载的对象的遮罩区域中的所述相交区域,从而把所述目标对象的所述相交区域遮挡住。
计算出相交区域后,需要将相交区域绘制出来。相交区域包括两个有遮罩关系的区域,一个是动态加载的对象遮罩区域中的相交区域,一个是目标对象所占据区域中的相交区域。这里绘制的相交区域是前者而非后者。这样绘制方式是与确定的进行遮罩计算的目标对象有关系,因为目标对象是该动态加载的对象加载后移动或放到该动态加载的对象附近的。也就是说,是在渲染了该动态加载的对象之后将该目标对象渲染到该动态加载的对象附近。如果不使用该动态加载的对象的遮罩信息,就会绘制目标对象所占据区域中的相交区域,使得后来渲染的该目标对象绘制在动态加载的对象的上面,从而造成渲染效果与真实效果不一致。
在上述示例性的渲染方法实施例中,为了描述的方便将步骤S301安排在步骤S302之前,步骤S303安排在步骤S302之后,但在实际应用过程中,步骤S301~303的目的在于为步骤S304提供遮罩计算的两个基础数据,只要这些提供基础数据的步骤在步骤S304之前完成即可实现本发明的发明目的,而不用限制必须按照前述的步骤执行。比如,实际执行顺序可以为S301、S303、S302等。此外,对于后续的S304、S305的步骤,在实际应用过程中,其也可能不是按照前述示例性实施例的方式执行,比如,一种可行的方式是一边执行计算相交区域的操作,一边进行相交区域的绘制操作,尤其在存在多个动态加载对象(详见后续内容)下,这两个步骤可以交替性的进行。
在前述示例性的实施例中,在实际应用过程中可能发生多种基于实际需要的变形。比如,动态加载的对象为多个,这种情况下的渲染过程将发生变化。在动态加载的对象为一个时,仅涉及到目标对象与该唯一的动态加载的对象之间的关系,而在动态加载的对象为多个时,将涉及到两类关系:一是多个动态加载的对象之间的关系;二是每个动态加载的对象与目标对象的关系。对于第一类关系,由于有多个动态加载的对象,而这些动态加载对象将可能均被渲染在与目标对象所占据的区域关联的范围内,这时必须使多个动态加载对象具有层次关系,即按照层次关系保存多个动态加载的对象的遮罩信息,从而使得在绘制相交区域时不出现错误。对于第二类关系,由于有多个动态加载的对象,每个动态加载对象的遮罩区域均可能与目标对象所占据的区域存在相交关系,这时便需要针对每个动态加载对象,计算每个动态加载对象的遮罩区域与目标对象占据的区域之间的相交区域。
根据上述第一类关系的要求,需要将动态加载对象的遮罩信息按照层次关系进行保存,该手段在具体实现时可以存在多种方式。比如,可以采用插入排序的方式实现层次性的保存:预先设定一个顺序表,该顺序表中的每个位置已排好顺序,然后随机地读取动态加载对象的遮罩信息,将这些动态加载的对象的遮罩信息按照层次关系插入到顺序表的合适位置。通过这种保存方式可以使处于无序状态中的动态加载对象的遮罩信息变得井然有序。
根据上述第二类关系的要求,需要计算每个动态加载对象的遮罩区域与目标对象占据的区域的相交区域,这样将产生多个相交区域,这些相交区域可能会存在遮罩关系,那么在绘制相交区域时则需要按照动态加载的对象的遮罩信息之间的层次关系来绘制相应遮罩区域,否则将可能导致渲染效果与真实效果不一致。在绘制多个相交区域时其具体实现方式可以存在多种。一种可行的方法是采用画家算法,即以观察点为基点,根据多个动态加载的对象的遮罩信息之间的层次关系确定多个动态加载的对象相对于观察点的远近关系,然后根据远近关系绘制相应遮罩区域的相交区域。通过这种方式将使多个相交区域的绘制不发生错乱,从而确保渲染效果与真实效果一致。
上述内容针对目标对象与动态加载的对象之间的遮罩关系如何进行渲染的问题进行了详细叙述。在实际应用过程中,还可能存在目标对象或者动态加载对象与静态对象存在遮罩关系的情形,这种情形下,也需要注意正确渲染相交区域。如前所述,在目标对象或动态加载的对象位于静态对象前面时(更准确地说,位于静态对象的遮罩区域之外时),目标对象或动态加载的对象可直接放置在静态对象之上,不进行处理即可保证渲染效果与真实效果一致,但是,当目标对象或动态加载的对象位于静态对象后面时(更准确地说,与静态对象的遮罩区域有相交时),则需要确定目标对象和/或动态加载的对象与静态对象之间的遮罩区域,从而把目标对象和/或动态加载的对象的相交区域遮挡住。
示例性设备
在介绍了本发明示例性实施方式的方法之后,接下来,参考图4,该图示出了一种渲染设备的示例性实施方式。该设备可以包括:保存装置401、确定装置402、获取装置403、第一运算装置404、第二运算装置405和第一绘制装置406,其中:
保存装置401,用于保存动态加载的对象的遮罩信息;
确定装置402,用于确定需要进行遮罩计算的目标对象;
获取装置403,用于获取所述遮罩信息;
第一运算装置404,用于根据所述遮罩信息确定动态加载的对象的遮罩区域;
第二运算装置405,用于计算所述目标对象占据的区域与所述动态加载的对象的遮罩区域的相交区域;
第一绘制装置406,用于绘制所述动态加载的对象的遮罩区域中的所述相交区域,从而把所述目标对象的所述相交区域遮挡住。
上述设备实施例的工作过程是:在启动渲染流程后,确定装置402确定需要进行遮罩计算的目标对象,同时或之前/之后,获取装置403从保存装置401中获取动态加载的对象的遮罩信息,第一运算装置404根据遮罩信息确定动态加载的对象的遮罩区域,然后,第二运算装置405计算目标对象占据的区域与所述动态加载的对象的遮罩区域的相交区域,第一绘制装置406绘制动态加载的对象的遮罩区域中的所述相交区域。通过渲染设备的上述工作,可以提供渲染效率,确保渲染效果与真实效果的一致性。
上述示例性的设备在具体实现时,根据具体情况需要,可以采用软件、硬件或者软件加硬件结合的方式实现。以硬件实现为例,上述保存装置401可以是任何具有存储能力的工业器件,比如,磁盘存储设备、缓存设备、闪存等;确定装置402可以采用选择电路或判决电路实现,选择电路在接收到触发电信号后,根据该电信号选择到需要进行遮罩计算的目标对象上,判决电路可以针对多个对象逐一进行判断,确定需要进行遮罩计算的目标对象;获取装置403可以为数据读取电路,从保存装置中读取出保存的动态加载的对象的遮罩信息;第一运算装置可以是一个具有运算处理能力的电子器件,比如单片机、微处理器等,同样的第二运算装置也可以具有运算处理能力的任何设备,但通常而言,第二运算装置405的处理能力可以强于第一运算装置,因为第二运算装置需要进行较大的数据处理;第一绘制装置406负责将相交区域绘制出来,可以采用具有绘制能力的设备来实现。
上述示例性的设备基于实际的需要可以进行各种变形或改进。在实际应用过程中,一种可能的情形是动态加载的对象具有多个,这种情况下:为避免出现后续的错误渲染,保存装置401需要按照层次关系保存多个动态加载的对象的遮罩关系,具体实现时保存装置可以进一步包括读取子装置4011和插入子装置4012,前者用于随机读取动态加载的对象的遮罩信息,后者将动态加载的对象的遮罩信息按照层次关系插入到顺序表的合适位置,当然,为了实现保存装置的功能也可以采用其他的内部结构组成来实现。类似地,第一绘制装置406在绘制相交区域时可以按照层次关系进行绘制,具体实现时第一绘制装置可以进一步包括识别子装置4061和绘制子装置4062,前者用于根据多个动态加载的对象的遮罩信息之间的层次关系确定多个动态加载的对象相对于观察点的远近关系,后者用于根据确定的远近关系先后绘制相应遮罩区域的相交区域,当然,为了实现第一绘制装置的功能也可以采用其他的内部结构组成来实现。
除上述叙述的可能出现多个动态加载对象的情形外,在实际应用过程中,还可能在目标对象或者动态加载的对象与静态加载的对象之间存在遮罩关系,即目标对象或者动态加载的对象所占据的区域与静态加载的对象的遮罩区域可能存在相交关系,有相交关系则存在遮罩的问题。在这种情形下,本发明实施例通过设置第二绘制装置来绘制静态加载的对象的遮罩区域的相交区域,从而把目标对象和/或动态加载的对象遮挡住。这里的第二绘制装置可以与前述的第一绘制装置具有相同或类似的内部结构。
应当注意,尽管在上文详细描述中提及了渲染设备的若干装置,但是这种划分并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化,比如,为节约成本,将第一绘制装置和第二绘制装置结合成能同时完成各自功能的一个绘制装置。并且,相反地,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。

Claims (10)

1.一种渲染方法,包括:
保存动态加载的对象的遮罩信息;
确定需要进行遮罩计算的目标对象;
获取所述遮罩信息,根据所述遮罩信息确定动态加载的对象的遮罩区域;
计算所述目标对象占据的区域与所述动态加载的对象的遮罩区域的相交区域;以及,
绘制所述动态加载的对象的遮罩区域中的相交区域,从而把所述目标对象的相交区域遮挡住。
2.根据权利要求1所述的方法,其中,所述动态加载的对象为多个,并且按照层次关系保存多个动态加载的对象的遮罩信息,分别计算目标对象占据的区域与每个动态加载的对象的遮罩区域的相交区域,以及根据所述多个动态加载的对象的遮罩信息之间的层次关系绘制相应遮罩区域的相交区域。
3.根据权利要求2所述的方法,其中,按照层次关系保存多个动态加载的对象的遮罩信息包括:
随机读取动态加载的对象的遮罩信息;
将所述动态加载的对象的遮罩信息按照层次关系插入到顺序表的合适位置。
4.根据权利要求2或3所述的方法,其中,根据所述多个动态加载的对象的遮罩信息之间的层次关系绘制相应遮罩区域的相交区域包括:
根据所述多个动态加载的对象的遮罩信息之间的层次关系确定所述多个动态加载的对象相对于观察点的远近关系;
根据确定的远近关系先后绘制相应遮罩区域的相交区域。
5.根据权利要求1所述的方法,还包括:
如果所述目标对象和/或所述动态加载的对象与静态加载的对象的遮罩区域相交,则绘制所述静态加载的对象的遮罩区域,从而把所述目标对象和/或所述动态加载的对象的相交区域遮挡住。
6.一种渲染设备,包括:保存装置、确定装置、获取装置、第一运算装置、第二运算装置和第一绘制装置,其中:
所述保存装置,用于保存动态加载的对象的遮罩信息;
所述确定装置,用于确定需要进行遮罩计算的目标对象;
所述获取装置,用于获取所述遮罩信息;
所述第一运算装置,用于根据所述遮罩信息确定动态加载的对象的遮罩区域;
所述第二运算装置,用于计算所述目标对象占据的区域与所述动态加载的对象的遮罩区域的相交区域;
所述第一绘制装置,用于绘制所述动态加载的对象的遮罩区域中的相交区域,从而把所述目标对象的相交区域遮挡住。
7.根据权利要求6所述的设备,其中,所述动态加载的对象为多个,所述保存装置,具体用于按照层次关系保存多个动态加载的对象的遮罩信息;所述第二运算装置,具体用于分别计算目标对象占据的区域与每个动态加载的对象的遮罩区域的相交区域;所述第一绘制装置,具体用于根据所述多个动态加载的对象的遮罩信息之间的层次关系绘制相应遮罩区域的相交区域。
8.根据权利要求7所述的设备,其中,所述保存装置包括读取子装置和插入子装置,所述读取子装置,用于随机读取动态加载的对象的遮罩信息;所述插入子装置,用于将所述动态加载的对象的遮罩信息按照层次关系插入到顺序表的合适位置。
9.根据权利要求7或8所述的设备,其中,所述第一绘制装置包括识别子装置和绘制子装置,所述识别子装置,用于根据所述多个动态加载的对象的遮罩信息之间的层次关系确定所述多个动态加载的对象相对于观察点的远近关系;所述绘制子装置,用于根据确定的远近关系先后绘制相应遮罩区域的相交区域。
10.根据权利要求7所述的设备,其中,所述设备还包括判断装置和第二绘制装置,所述判断装置,用于判断所述目标对象和/或所述动态加载的对象与静态加载的对象的遮罩区域是否相交,如果是,则触发第二绘制装置;所述第二绘制装置,用于绘制所述静态加载的对象的遮罩区域,从而把所述目标对象和/或所述动态加载的对象的相交区域遮挡住。
CN201310752469.6A 2013-12-31 2013-12-31 一种渲染方法及设备 Active CN103679793B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310752469.6A CN103679793B (zh) 2013-12-31 2013-12-31 一种渲染方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310752469.6A CN103679793B (zh) 2013-12-31 2013-12-31 一种渲染方法及设备

Publications (2)

Publication Number Publication Date
CN103679793A CN103679793A (zh) 2014-03-26
CN103679793B true CN103679793B (zh) 2016-09-28

Family

ID=50317235

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310752469.6A Active CN103679793B (zh) 2013-12-31 2013-12-31 一种渲染方法及设备

Country Status (1)

Country Link
CN (1) CN103679793B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106709229B (zh) * 2015-11-12 2019-07-12 网易(杭州)网络有限公司 一种游戏系统中npc对象优先响应的方法及装置
CN105976415B (zh) * 2016-05-20 2020-05-26 腾讯科技(深圳)有限公司 一种遮罩显示处理方法和装置
CN109427084B (zh) * 2017-08-25 2022-05-24 腾讯科技(深圳)有限公司 一种地图显示方法、装置、终端及存储介质
CN108037966A (zh) * 2017-11-10 2018-05-15 维沃移动通信有限公司 一种界面显示方法、装置及移动终端
CN109087402B (zh) * 2018-07-26 2021-02-12 上海莉莉丝科技股份有限公司 在3d场景的特定表面上覆盖特定表面形态的方法、系统、设备和介质
CN111598984B (zh) * 2020-04-07 2023-06-16 厦门极致互动网络技术股份有限公司 一种游戏画面的渲染方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102147923A (zh) * 2010-11-19 2011-08-10 李新全 一种动画图像的遮挡显示方法
CN102509343A (zh) * 2011-09-30 2012-06-20 北京航空航天大学 一种基于双目图像和对象轮廓的虚实遮挡处理方法
CN103472909A (zh) * 2012-04-10 2013-12-25 微软公司 用于头戴式、增强现实显示器的逼真遮挡

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4244816B2 (ja) * 2004-01-29 2009-03-25 ヤマハ株式会社 画像処理方法および装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102147923A (zh) * 2010-11-19 2011-08-10 李新全 一种动画图像的遮挡显示方法
CN102509343A (zh) * 2011-09-30 2012-06-20 北京航空航天大学 一种基于双目图像和对象轮廓的虚实遮挡处理方法
CN103472909A (zh) * 2012-04-10 2013-12-25 微软公司 用于头戴式、增强现实显示器的逼真遮挡

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于LOD的三维游戏渲染引擎场景绘制技术的研究;刘寅;《中国优秀硕士学位论文全文数据库 信息科技辑》;20100115;I138-257 *

Also Published As

Publication number Publication date
CN103679793A (zh) 2014-03-26

Similar Documents

Publication Publication Date Title
CN103679793B (zh) 一种渲染方法及设备
CN105912234B (zh) 虚拟场景的交互方法和装置
CN109165076A (zh) 游戏应用程序的显示方法、装置、终端及存储介质
CN108154548A (zh) 图像渲染方法及装置
CN112433657B (zh) 电子书的仿真翻页方法、电子设备及计算机存储介质
US9959685B2 (en) Method and system for selectively blending buildings to improve route visibility in a 3D navigation system
CN108389151B (zh) 一种过度绘制的评估方法和系统
CN108830923B (zh) 图像渲染方法、装置及存储介质
CN107875630A (zh) 渲染区域确定方法及装置
US20160188178A1 (en) Display Processing Method And Portable Mobile Terminal
CN112433796B (zh) 电子书的仿真翻页方法、电子设备及计算机存储介质
CN106621331B (zh) 一种游戏对象执行目标切换方法和装置
KR101953133B1 (ko) 렌더링 장치 및 그 방법
CN112473126B (zh) 场景消隐处理方法、装置、电子设备及介质
US10067660B2 (en) Method and apparatus for displaying attributes of plane element
US20170329803A1 (en) Method and device for image loading
CN105843520A (zh) 用于在多点触摸终端上调整被操控工具的方法及设备
CN105243268A (zh) 一种游戏地图定位方法、装置及用户终端
CN103577047B (zh) 用于数据网格控件的水平滚动条的显示处理方法和装置
CN111179414B (zh) 一种地形lod的生成方法
CN107016079A (zh) 一种知识点的展示方法及装置
CN116152422A (zh) 一种光照数据的处理方法、装置及电子设备
CN115131531A (zh) 虚拟对象显示方法、装置、设备及存储介质
CN106504183B (zh) 顶点属性存储的方法及装置
Apostu et al. Analytic ambient occlusion using exact from-polygon visibility

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant