CN1294538C - 改进的s缓冲抗混叠方法 - Google Patents
改进的s缓冲抗混叠方法 Download PDFInfo
- Publication number
- CN1294538C CN1294538C CNB008014124A CN00801412A CN1294538C CN 1294538 C CN1294538 C CN 1294538C CN B008014124 A CNB008014124 A CN B008014124A CN 00801412 A CN00801412 A CN 00801412A CN 1294538 C CN1294538 C CN 1294538C
- Authority
- CN
- China
- Prior art keywords
- pixel
- point
- polygon
- crossing
- limit
- 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
- 238000000034 method Methods 0.000 title claims abstract description 18
- 239000011159 matrix material Substances 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 4
- 230000003139 buffering effect Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000000007 visual effect Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 102000004127 Cytokines Human genes 0.000 description 4
- 108090000695 Cytokines Proteins 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004040 coloring Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 239000011435 rock Substances 0.000 description 2
- 244000062793 Sorghum vulgare Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 235000019713 millet Nutrition 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/503—Blending, e.g. for anti-aliasing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Multimedia (AREA)
- Image Generation (AREA)
- Vehicle Body Suspensions (AREA)
- Ultra Sonic Daignosis Equipment (AREA)
- Vibration Dampers (AREA)
Abstract
用于计算机图象生成系统的一种方法和设备,其中多边形显示在一个象素矩阵上,用来编码表示多边形和象素的交叉点的数据,该方法包括接收输入数据信号的步骤,该信号表现为要显示的每个多边形的至少三个顶点的每个顶点的坐标集,每个多边形的每个不同对的顶点定义该多边形的一个不同边;和响应接收到的顶点数据信号,生成边数据信号的信号,该信号描述有每个象素都要显示的多边形的边的交叉点,如果有交叉点的话。
Description
技术领域
本发明涉及计算机图象生成(CIG)系统,更具体地涉及用于显示处理器的新颖的色彩决定装置,并涉及处理描述目标正面的图象数据的新颖方法,用于显示实时成像系统中的这些对象的二维表示。
背景技术
设计实时计算机图象系统以提供许多视频图形系统的实时图象再现,如视频游戏和视频培训和模拟设备。在这些系统中,更适合提供用户视频显示的现实。
在一个典型的实时计算机图形生成系统中,如视频游戏,图形生成以三个顺序阶段完成:控制器,几何处理器和显示处理器。这三个处理阶段或部分的每一个对表示或对应将要显示的三个连续场景之一中的数据都进行独立处理。每一个这些处理阶段或部分处理在一个场景或图形的数据一个固定时间,它可能是16.67毫秒的场时间也可以是33.3毫秒的帧时间,通常为前者。这些特殊的场和帧时间对应一般电视格式显示的场时间和帧时间,即每帧二个交替场,每秒30个帧。
每个时间间隔,所有三个处理器一直在工作,这样在任何给定时间,处理器处理三个单独的场景。每个部分在该间隔处理输入并产生输出,所以数据以连续的方式,从控制器至几何处理器然后至显示处理器,流过这三个阶段。计算负载分散在特殊化的处理器部分,新场景能以每个场时间或帧时间显示,即使结果延迟三个场时间或帧时间。
例如,在一个模拟飞行系统的电视游戏中,用户或玩家的输入由控制器接收;在由控制器,几何处理器和显示处理器顺序处理之后,输出作为一个彩色场景输送给玩家观看的视频显示。玩家看到的数据首先作为应用于一个环境定义的简单控制输入,并被转换至象素视频显示信息。在控制器中,玩家输入用来计算被模拟的飞行器的新位置和方位,并由此计算一个数学转置矩阵,用来从参照坐标系旋转对象至一个显示坐标系。处理飞行器,目标位置和其它飞行器的其它信息也在控制器中计算。在某些应用中,控制器是一个通用计算机。
几何处理器从数据库读取目标的描述,它在已保存的该场景的三维数字表示中是潜在可视的,并且使用在控制器中计算的转置矩阵将读取的对象旋转为显示坐标。几何处理器将三维数据数字化投影到二维显示窗口上。另外,几何处理器计算(使用深度缓冲区或之类)哪个对象在前或在其它对象之后,并保存该信息在一个优先级清单中。
处理过的每个对象由单独面组成,其中每个面是直边限制的多边形的形式。该优先级清单包括在该场景中的所有面的次序,清单中的第一个面为最高级别的面,清单中的最后一个面为最低级别的面。一旦二个面在显示器上交迭,较高优先级的面将是可视的,而较低优先级的面将被隐藏。最后,几何处理器计算限制二维面的边的显示结束点,还计算描述这些限定边的线性方程的相关系数。
显示处理器接收二维面描述以及附加的与面有关的数据,并使用该信息输出数据描述至一个彩色显示,每个象素在该场景中。该系统中的每个彩色显示一般由1024行的视频信息组成,每行有1024个单独彩色点或象素。显示处理器要为每个象素解决,假设许多面能出现在一个象素中并且面的某些部分可能被其它面覆盖,象素的颜色应该是什么。因为所有这些象素值需要在1/60秒中计算出,显示处理器中的处理负担是很高的。为了给多显示系统(单个系统包括14个显示器之多)计算视频,显示处理器必须能处理每秒超过100亿次计算。
一个难题是以一个抗混叠方式处理象素色度信息,它容许适当的可视的高清晰度边缘效果,同时防止不需要的视频数据元素(“扭曲”)取代所期望的元素身份,这样在该象素中作为一个错误颜色,或以一定程度的半透明出现。
发明内容
本发明的目标之一是提供一个改进的计算机图象生成系统的抗混叠过程。
本发明的另一个目标是提供对用于计算机图象生成系统中的一个抗混叠过程的边交叉部数据进行编码的一个改进处理。
这些和其它目标是通过一个方法而获得的,它用于计算机图象生成系统中,其中多边形显示在一个象素矩阵上,用来对表示多边形的交叉部和象素的数据进行编码。该方法包括接收输入数据信号的步骤,该信号表现为将要显示的每个多边形的至少三个顶点中的每一个的坐标集,每个多边形的每个不同对的顶点定义该多边形的不同边;并响应接收到的顶点数据信号,生成边界数据信号,它描述每个象素将要显示的该多边形边的交叉部,如果有交叉部的话。
对于每个将要显示的象素,生成步骤包括,i)为该象素的每一边确认被选择的一个多边形的边界是否与所述的象素边交叉,以及ii)如果被选择的多边形的边与象素的任一边交叉,则保存沿着该象素的一边或多边的位置的估计值,在该位置多边形边与象素边交叉。
这些和其它目标是通过一个设备而获得的,它用于计算机图象生成系统,其中多边形显示在一个象素矩阵上,用来编码表示多边形和象素的交叉点的数据。该设备包括用来接收输入数据信号的装置,信号表现为要显示的每个多边形的至少三个顶点的每个顶点的坐标集,每个多边形的每个不同对的顶点定义该多边形的一个不同边缘;响应接收到的顶点数据信号用来生成边缘数据信号的装置,该信号描述有要显示的每个象素与多边形的边缘的交叉点,如果有交叉点的话。
对于每个要显示的象素,生成装置包括:i)为象素的每一边确认一个被选择的多边形的边缘是否与所述的象素边交叉的装置,和ii)如果被选择的多边形的边缘与该象素的任何边交叉,则保存沿着该象素的一条边或多条边的位置的估计值的装置,在这些边上多边形的边缘与象素边交叉。
考虑下面的详细描述并参考指定和显示本发明的优先实施例的附图,本发明的另一些好处和优点将更加明显。
附图说明
图1是计算机图象生成(CIG)系统的一个示意性框图,在这里可以实现本发明的装置和方法;
图2是一个空间图,描述在目标空间中的目标正多边形,和在图象空间中的对应的图象正多边形,以及图象面将显示其上的显示光栅的图形元素(象素)之间的关系;
图2a是在将要显示的所希望的多边形附近,图2的图象显示的放大部分;
图3a是一对正多边形成象其上的显示象素矩阵的一个视图;
图3b是一个正多边形定位其上的显示象素矩阵的一个视图,并表示可以用来决定象素颜色数据的各种象素边E和边距离D;
图4解释了与几个象素边界交叉的一个多边形;
图5示出了确认边交叉信号的数据位的一个表;
图6解释了解决边交叉的一个过程;和
图7示意性地描述一个子象素过滤器。
具体实施方式
首先参考图1,示出了计算机图象系统,如飞行器驾驶窗模拟系统的功能框图。参照现有的CIG技术,包括这样的出版物,如美国专利4727365,它发表于1988年2月23日,由Bunker等人在“高级视频目标生成器”中提出;美国专利4825391,1989年4月25日公开,由D.Merz在“实时计算机图象生成系统的深度缓冲区优先级处理”中提出;美国专利5668940,由W.Steiner和M.Morgan在“计算机成象系统中的多边形边抗混叠的方法和设备”中提出;这三个美国专利4727365,4825391和5668940在这里作为整体一起作为参考。
系统10包括一个控制器单元12,一个几何处理器单元14和一个显示处理器单元16。显示处理器单元16向显示窗口18显示信息,来模拟飞行器通过一个场景的移动。操作器20通过输入控制接口22链结至计算机图象生成系统10。操作器的动作反馈至输入控制接口22。输入控制接口从操作器向控制器12转换合适的数据,如飞行器位置,飞行器摇晃,颠簸以及偏航角度。
在控制器12中,操作员输入用来计算飞行器的新位置和方向,并由此计算一个数学转置矩阵,用来从参照坐标系向显示坐标系旋转目标,这在现有技术中是已知的。有关场景,目标位置或其它飞行器的其它信息在控制器中计算。在某些计算机图象生成系统中,控制器单元12为一个通用计算机。
控制器单元12通过最新的飞行器方位周期性地更新。该方向包括飞行器摇晃,颠簸,偏航和从经过输入控制接口至控制器12距离操作员的位置。控制器12对一个场景加工一个场时间或帧时间,然后将数据传递给几何处理器14。
几何处理器14从场景数据库内存24中读取目标描述,如塔,道路,河流,飞机棚等等,它们在保存的地面的三维数字表示中是潜在可视的。这些目标从场景数据库读取,并使用在控制器12中计算出的转置矩阵旋转到显示坐标。几何处理器14修剪视目标空间中的视窗边界外的所有边,处理器14将该三维目标数据数字化投影到二维显示窗口上。
超出显示窗口边界的目标面在二维图象空间中被剪辑。二维目标包括点,线,封闭凸多边形或它们的组合。每个封闭凸多边形作为一个正面是已知的。这样,处理过的每个目标是由一个个单独面组成,其中每个面由直边所限。一旦在几何处理器14中从三维目标中计算出面,该数据传递给显示处理器16。而且,几何处理器14用已知的方式计算哪个面在前面或在其它面的后面,并保存该信息于一个优先级清单中。
该优先级清单包括该场景中的所有面的次序,其中清单中的第一个面是最高优先级的面,而清单中的最后一个面是最低优先级的面。一旦二个面在显示中重叠,较高优先级的面将是可视的,而较低优先级的面的重叠部分将是隐藏的。在计算出优先级清单之后,几何处理器14计算限制二维面的线段的显示终点,并计算描述限制边的线性方程的相关系数。几何处理器14计算描述被限制的面的每个边的终点和每个边的斜度。然后这些数据传递给显示处理器16。
图1示出了用来驱动视频显示18的显示处理器16。在某些系统中,单个控制器12和几何处理器14用来驱动不只一个显示处理器。显示处理器负责处理在视频显示器18上将要显示的信息。显示处理器执行的一个特殊任务将是,假定有能出现在一个象素中的许多面,以及部分面可以被其它面覆盖,为在视频显示器18中的每个象素解出该象素的颜色应该是什么。为了实现该功能,于是显示处理器16从几何处理器14接收二维面描述,以及面颜色和面优先级清单,并使用这些信息来输出该场景至彩色视频显示18。在系统中显示的每个颜色能由视频信息的1024或更多线组成,并在每条线上一般有1024个单独的颜色点或象素(图形元素)。对于每个象素,该显示器可以接收一个12位红色数据信号,一个12位绿色数据信号和一个12位蓝色数据信号,作为描述该象素的颜色的密度信息部分。
参考图2,观察员的眼睛20′在视点VP,并在目标空间30′中观看在视窗中的一个样本正多边形30。只有沿着视线32才能看到最接近观看者20′的面30。使用现有技术中已知的深度缓冲区技术(例如参见前面提及的美国专利,专利号为4825391以及其中引用的参考书),可视面由在视点VP和正面点PF之间的跨度距离R比较而决定。这样,可视多边形30(这里,由它的顶点Va,Vb,Vc确定的三角形正面)为该多边形沿视线32有最小跨度Rmin。该目标空间30′在图象空间34′被投影到显示窗口34之中;而且正多边形30作为显示多边形36′被投影,各自的顶点V1,V2和V3分别对应顶点Va,Vb和Vc。
显示窗口通常为显示光栅,沿着水平线(J方向)从光栅/窗口的左边(J=J0)至光栅/窗口的右边(J=Jmax)以顺序方式扫描过每个象素38,从光栅/窗口的顶边(I=I0)至底边(I=Imax)线间的距离递增(I方向)。这样,从第一个(左手)象素P1至最后一个(右手)象素Pr扫描路径线Lp。象素Pp由通过窗口平面34的视线32确认,这样象素线Lp包括投影和对应多边形点Pf的一个图象点。沿着线Lp,多边形36将包括这些象素,它即从最左边的点P0,它由穿过左线位置的JL确定,至最右边的点Pq,它由穿过右线位置的JR确定。
参考图2a,沿着扫描线34″的一行象素38开始于最左边象素38h沿着J方向顺序扫描。然后进行下一个象素38I,这样那条线在该多边形的左边到达象素38l,并被该多边形36部分覆盖。该象素确认为一个多边形边和J线34″的最左边交叉点。沿着该线继续,通过被该多边形完全覆盖的其它象素38,象素38r到达该多边形的右边并被该多边形36部分覆盖。该象素被确认为一个多边形边的最右边交叉点JR。继续沿着J线34″前进,最终到达该扫描线的最右边象素38v。
将看到不考虑更远距离的多边形的色度的半透明和流逝,完全被多边形36覆盖并因此全部在其中的象素38的属性恰好具有多边形面属性(颜色,密度,半透明等等)。相反,只有该象素部分真正覆盖,被多边形36部分覆盖的象素(如象素38l和38r)具有那个特殊多边形的属性,这样剩下的象素的属性必须从其它信息获得,并根据每个多边形/颜色信息源覆盖的象素的不同百分比来混合。
这可以通过参考图3a来理解,其中第一个多边形36a被排在另一个多边形36b的前面(这通过任何已知的深度缓冲处理),如同在图象空间所见到的。多边形36有多个顶点(如,图3b的四个顶点V1,V2,V3和V4),它由类似的多个多边形边连接(如图3b所示,边39a,39b,39c和39d),这些边在交叉点40穿过象素边界。图象屏幕由象素的矩阵组形成,顺序沿着水平线(如线...,L-2,L-1,L,L+1,L+2,...)以垂直列排列(如列...,P-2,P-1,P,P+1,P+2,...),在象素的每条线L的较低划线的水平边E有下一个较高数目(下一个将要扫描)的象素线。因此每个象素能由它的行线L和列P下标排序。将看到,有些象素如象素(L,P)将只由一个多边形(多边形36a)完全覆盖,并因此只有那个多边形的属性,同时其它象素有多个多边形的共享/混合属性。
参考图3b,颜色属性可以通过考虑整个象素决定,并不需要处理每个象素(或子象素)的多个子部的颜色信息,即便使用前面提及的美国专利4825391的深度缓冲处理结构(使用/不使用跨越/子跨越(subspan)处理方法)。应该理解,处理过的每项信息是电子数字数据的一个信号字。在我们可以用简称(如角,边,多边形等等)讨论这些信号的同时,而且我们意味这些术语来表示数据信号,用于每个这些各自的几何概念。例如,“角”表示指定二维象素角位置的数据字,“边”为表示有关多边形边的线的数据字集,“多边形”意味与有关特殊的多边形对等的数字数据结构,等等。处理的结果将提供视频信号(数字视频,或从模拟视频导出的数字视频)的最终序列,它能引起视频显示装置18的单独象素的颜色和密度发亮和着色,对观察者20是可视的。
在多边形和象素边界之间的一个交叉点或多个交叉点的基础上,决定部分覆盖一个象素的一个多边形构成最终象素属性的范围。用这种方式决定象素属性的一个过程在上面指出的美国专利5668940详细描述过。
一般地,根据该过程,提供输入数据信号,其特征是要显示的每个正多边形的至少三个顶点中的每一个的显示空间坐标。然后,利用该顶点数据来决定哪个多边形边,如果有的话,与形成该显示光栅的象素序列中的一个相交,然后决定沿着相关象素边的交点的位置。影响每个象素的所有多边形的边交叉数据信号以每个象素为基础保存在一个帧缓冲中,每个多边形的颜色数据占领该象素的任何部分。对于每个要显示的象素,处理被选择的相邻象素的几个边的集合,来解决边关系并混合多边形颜色密度数据来决定每个显示象素的最终的可观察的颜色。
参考图4,每个象素50是一个取该多边形样本的采样点。计算出该多边形边在相邻采样点相交的位置。对于每个象素采样点,计算出一个上,左,右,下边交叉点。如果该边交叉点在下一个象素采样点之外,该边交点标记为被覆盖,意味着该多边形覆盖相邻的象素采样点或位于其上。对于图4中的例子,较低左象素采样点的右交叉点52a以及较低右象素采样点的左交叉点52b将标记为被覆盖。
每个多边形边能标记为抗混叠的,或不是抗混叠的。而且,每个多边形边能标记为网格抗混叠的。在该模式下,多边形边是抗混叠的,如果对于象素采样点的每个多边形边交叉点是网格抗混叠是激活的,并且该边不与另一多边形共享,以及该边标记为抗混叠的。如果网格抗混叠是非激活的,该边是抗混叠的除非该边标记为不是抗混叠的。
如果该象素是一个图象的部分而不是一个多边形的部分,该象素标记为条件抗混叠的。在这种情况下,如果一个多边形边位于该图象之上,该多边形边对于该图象是抗混叠的;否则,该图象不是抗混叠的。
当使用阿尔法缓冲操作(源和目标混合模式),即将在帧缓冲的颜色(目标)与正在放入该帧缓冲的颜色(源)混合,该边交叉点混合如下:
阿尔法缓冲混合方程是:混合因子s*源象素+混合因子d*目标象素。如果混合因子s为0,源象素没有边交叉点。如果混合因子d为0,目标象素没有边交叉点。如果源象素和目标象素没有边交叉点,什么都不做。如果源象素有边交叉点,而目标象素没有,使用源象素边交叉点。如果源象素没有边交叉点,而目标象素有,使用目标象素边交叉点。如果源象素有边交叉点,而目标象素也有,平均源和目标象素边交叉点。
边交叉点能被压缩到8位或9位以适合帧缓冲,如图5中的表格所示。
交叉点标记,如果设置的话,表示有一个边交叉,如果不设置的话,表示该多边形位于相邻象素上。
如果需要网格抗混叠,需要9位,否则需要8位。该网格标志能替代帧缓冲中的蓝色的LSB。这将对该图象有最小影响。接近除以3。边交叉点可以保存在阿尔法元素中的帧缓冲中。这限制使用目标阿尔法的任何混合模式。
边交叉点数据在输出时间从帧缓冲中读取。然后已编码的边交叉点数据能被解码到原来的边交叉点数据。
参考图6,四个相邻的象素采样点50a,50b,50c和50d从帧缓冲取走。这些象素采样点变成一个象素的四个角。每个采样点有四个交叉点和几个标记。每个象素采样点的边交叉点被分解以形成该象素的每条边的一个单边交叉点。例如,左上象素采样点50a有一个右交叉点,右上象素采样点50b有左交叉点。这二个交叉点被分解以形成该象素上边的一个边交叉点。
边分解的规则如下:
如果对于任何象素采样点,混合标没有设置,那么不选择混合抗混叠。
为该象素的每条边,选择二个采样点。
i)如果有一个边交叉点,那么设置有效边交叉点标记为0,并设置边交叉点标记为缺省值(.5)。
ii)如果有采样点A的一个边交叉点,并且没有其它采样点的边交叉点,那么设置有效边交叉点标记为1,并且设置边交叉点对于采样点A的边交叉点。
iii)如果有二个边交叉点并且不是混合抗混叠的,那么设置有效边交叉点标记为1,并且边交叉点是2个边交叉点的平均。
iv)如果有二个边交叉点并且是混合抗混叠的,那么设置有效边交叉点标记为0,并设置边交叉点标记为缺省值(.5)。
如果象素将是抗混叠的,该象素角颜色必须一起混合如下:
注意到边交叉点范围在0和1.0之间,并从左至右和从上至下数字递增。
i)如果上部的左象素采样点标记为不是抗混叠的,或者如果所有的象素采样点标记为条件抗混叠的,或者如果没有有效的边交叉点并且设置了混合抗混叠标,那么象素颜色是上部左象素采样点的颜色。
ii)如果在象素中有2个有效边交叉点,那么根据下面规则计算面积:
如果(顶交叉点有效而且底交叉点有效),那么
Area_tl=Area_bl=(top xing+bot xing)/4
Area_tr=Area_br=-Area_tl
如果(右交叉点有效而且左交叉点有效),那么
Area_tl=Area_tr=(right xing+left_xing)4
Area_bl=Area_br=-Area_tl
如果(顶交叉点有效而且左交叉点有效),那么
Area_tl=(top xing*left_xing)/2
Area_bl=Area_tr=Area_br=(1-Area_tl)/3
如果(顶交叉点有效而且右交叉点有效),那么
Area_tr=((1-top xing)*right xing)/2
Area_bl=Area_tl=Area_br=(1-Area_tr)/3
如果(底交叉点有效而且左交叉点有效),那么
Area_bl=(bot xing*(1-left xing))/2
Area_br=Area_tr=Area_tl=(1-Area-bl)/3
如果(底交叉点有效而且右交叉点有效),那么
Area_br=(bot xing*(1-right xing))/2
Area_bl=Area_tr=Area_tl=(1-Area_br)/3
否则
Area_tl=(top xing+left xing)/4
Area_tr=(1-top xing+right xing)/4
Area_bl=(1-bot xing+left xing)/4
Area_br=(2-bot xing-right xing)/4
最终混合象素颜色由下面方程决定:
颜色=左上象素角颜色×Area_tl+右上象素角颜色×Area_tr+左下象素角颜色×Area_bl+右下象素角颜色×Area_br
参考图7,如果为了更好取样需要每个象素60的2X2S已缓冲子象素,该象素分辨率能增加4个因子,于是应用于过滤象素的以前的过滤器62降低了显示分辨率。
子象素11,12,21和22是位于要显示的象素之上的子象素。取走周围的12个象素,然后根据下列方程使用一个回旋过滤器来计算象素颜色:
象素颜色=w((子象素11+子象素12+子象素21+子象素22)/4)+(1-W)(所有其它子象素/12)
如果加权W为1.0,那么不使用周围子象素。如果W为0.75,那么产生一个金字塔形的过滤器。如果W为0.5,那么产生一个标准过滤器。
显然这里公开的本发明经过较好计算以满足前面表述的目标,可以理解本领域的技术人员可以作出许多修改和实施例,想用附加的权利要求书覆盖这样的修改和实施例,因为它们落在本发明的实质和范畴之中。
Claims (2)
1.用于计算机图象生成系统的一种方法,其中多边形显示在一个象素矩阵上,用来编码表示多边形和象素的交叉点的数据,该方法包括:
接收输入数据信号,信号表现为要显示的每个多边形的至少三个顶点的每个顶点的坐标集,每个多边形的每个不同对的顶点定义该多边形的一个不同边缘;
响应接收到的顶点数据信号,生成边缘数据信号,描述有要显示的每个象素与多边形的边缘的交叉点,如果有交叉点的话,其中生成步骤包括:
对于每个将要显示的象素
i)利用该顶点数据来决定哪个多边形边,如果有的话,与形成该显示光栅的象素序列中的一个相交,和
ii)决定沿着相关象素边的交点的位置
iii)保存影响每个象素的所有多边形的边交叉数据信号。
2.用于计算机图象生成系统的一种设备,其中多边形显示在一个象素矩阵上,用来编码表示多边形和象素的交叉点的数据,该设备包括:
用来接收输入数据信号的装置,信号表现为要显示的每个多边形的至少三个顶点的每个顶点的坐标集,每个多边形的每个不同对的顶点定义该多边形的一个不同边缘;
响应接收到的顶点数据信号用来生成边缘数据信号的装置,该信号描述有要显示的每个象素与多边形的边缘的交叉点,如果有交叉点的话,其中生成装置包括:
i)利用该顶点数据来决定哪个多边形边,如果有的话,与形成该显示光栅的象素序列中的一个相交的装置,和
ii)决定沿着相关象素边的交点的位置的装置;
iii)保存影响每个象素的所有多边形的边交叉数据信号的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/354,189 US6377274B1 (en) | 1999-07-15 | 1999-07-15 | S-buffer anti-aliasing method |
US09/354,189 | 1999-07-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1318179A CN1318179A (zh) | 2001-10-17 |
CN1294538C true CN1294538C (zh) | 2007-01-10 |
Family
ID=23392227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB008014124A Expired - Fee Related CN1294538C (zh) | 1999-07-15 | 2000-07-17 | 改进的s缓冲抗混叠方法 |
Country Status (9)
Country | Link |
---|---|
US (1) | US6377274B1 (zh) |
EP (1) | EP1183650B1 (zh) |
JP (1) | JP4624617B2 (zh) |
KR (1) | KR100739838B1 (zh) |
CN (1) | CN1294538C (zh) |
AT (1) | ATE442638T1 (zh) |
CA (1) | CA2344524A1 (zh) |
DE (1) | DE60042924D1 (zh) |
WO (1) | WO2001006460A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003903448A0 (en) * | 2003-06-26 | 2003-07-17 | Canon Kabushiki Kaisha | A method for tracking depths in a scanline based raster image processor |
EP1659536A1 (en) * | 2004-11-19 | 2006-05-24 | Telefonaktiebolaget LM Ericsson (publ) | Method and apparatus for pixel sampling |
WO2006129902A1 (en) * | 2005-06-03 | 2006-12-07 | Polidigm Co., Ltd. | Fast anti-aliasing method |
US10430983B2 (en) | 2017-06-05 | 2019-10-01 | Microsoft Technology Licensing, Llc | Vertex pixel buffer |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4714428A (en) * | 1985-12-19 | 1987-12-22 | General Electric Company | Method of comprehensive distortion correction for a computer image generation system |
US4727365A (en) * | 1983-08-30 | 1988-02-23 | General Electric Company | Advanced video object generator |
CN1072281A (zh) * | 1991-08-29 | 1993-05-19 | 洪尼维尔有限公司 | 产生防混叠的显示图像晕轮的装置和方法 |
US5528738A (en) * | 1993-10-06 | 1996-06-18 | Silicon Graphics, Inc. | Method and apparatus for antialiasing raster scanned, polygonal shaped images |
US5555360A (en) * | 1990-04-09 | 1996-09-10 | Ricoh Company, Ltd. | Graphics processing apparatus for producing output data at edges of an output image defined by vector data |
CN1155715A (zh) * | 1995-10-06 | 1997-07-30 | 任天堂株式会社 | 轮廓边缘的去混叠 |
US5668940A (en) * | 1994-08-19 | 1997-09-16 | Martin Marietta Corporation | Method and apparatus for anti-aliasing polygon edges in a computer imaging system |
JPH113436A (ja) * | 1997-01-31 | 1999-01-06 | Microsoft Corp | 照度マップ作成方法、照度マップ決定方法、及び照度マップ作成システム |
JPH1186007A (ja) * | 1997-07-02 | 1999-03-30 | Hewlett Packard Co <Hp> | プリミティブにより覆われるピクセルの割合を求める方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4825391A (en) | 1987-07-20 | 1989-04-25 | General Electric Company | Depth buffer priority processing for real time computer image generating systems |
GB2278524B (en) * | 1993-05-28 | 1997-12-10 | Nihon Unisys Ltd | Method and apparatus for rendering visual images employing area calculation and blending of fractional pixel lists for anti-aliasing and transparency |
US5684939A (en) * | 1993-07-09 | 1997-11-04 | Silicon Graphics, Inc. | Antialiased imaging with improved pixel supersampling |
US6005580A (en) * | 1995-08-22 | 1999-12-21 | Micron Technology, Inc. | Method and apparatus for performing post-process antialiasing of polygon edges |
US6226005B1 (en) * | 1997-01-31 | 2001-05-01 | LAFERRIèRE ALAIN M | Method and system for determining and/or using illumination maps in rendering images |
-
1999
- 1999-07-15 US US09/354,189 patent/US6377274B1/en not_active Expired - Lifetime
-
2000
- 2000-07-17 KR KR1020017003303A patent/KR100739838B1/ko not_active IP Right Cessation
- 2000-07-17 DE DE60042924T patent/DE60042924D1/de not_active Expired - Fee Related
- 2000-07-17 AT AT00947486T patent/ATE442638T1/de not_active IP Right Cessation
- 2000-07-17 WO PCT/US2000/019523 patent/WO2001006460A1/en active Application Filing
- 2000-07-17 JP JP2001511639A patent/JP4624617B2/ja not_active Expired - Fee Related
- 2000-07-17 CA CA002344524A patent/CA2344524A1/en not_active Abandoned
- 2000-07-17 CN CNB008014124A patent/CN1294538C/zh not_active Expired - Fee Related
- 2000-07-17 EP EP00947486A patent/EP1183650B1/en not_active Expired - Lifetime
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4727365A (en) * | 1983-08-30 | 1988-02-23 | General Electric Company | Advanced video object generator |
US4727365B1 (en) * | 1983-08-30 | 1999-10-05 | Lockheed Corp | Advanced video object generator |
US4714428A (en) * | 1985-12-19 | 1987-12-22 | General Electric Company | Method of comprehensive distortion correction for a computer image generation system |
US5555360A (en) * | 1990-04-09 | 1996-09-10 | Ricoh Company, Ltd. | Graphics processing apparatus for producing output data at edges of an output image defined by vector data |
CN1072281A (zh) * | 1991-08-29 | 1993-05-19 | 洪尼维尔有限公司 | 产生防混叠的显示图像晕轮的装置和方法 |
US5528738A (en) * | 1993-10-06 | 1996-06-18 | Silicon Graphics, Inc. | Method and apparatus for antialiasing raster scanned, polygonal shaped images |
US5668940A (en) * | 1994-08-19 | 1997-09-16 | Martin Marietta Corporation | Method and apparatus for anti-aliasing polygon edges in a computer imaging system |
CN1155715A (zh) * | 1995-10-06 | 1997-07-30 | 任天堂株式会社 | 轮廓边缘的去混叠 |
JPH113436A (ja) * | 1997-01-31 | 1999-01-06 | Microsoft Corp | 照度マップ作成方法、照度マップ決定方法、及び照度マップ作成システム |
JPH1186007A (ja) * | 1997-07-02 | 1999-03-30 | Hewlett Packard Co <Hp> | プリミティブにより覆われるピクセルの割合を求める方法 |
Also Published As
Publication number | Publication date |
---|---|
EP1183650A4 (en) | 2007-10-10 |
CN1318179A (zh) | 2001-10-17 |
WO2001006460A1 (en) | 2001-01-25 |
KR20010089257A (ko) | 2001-09-29 |
EP1183650A1 (en) | 2002-03-06 |
JP2003505772A (ja) | 2003-02-12 |
CA2344524A1 (en) | 2001-01-25 |
KR100739838B1 (ko) | 2007-07-18 |
US6377274B1 (en) | 2002-04-23 |
EP1183650B1 (en) | 2009-09-09 |
JP4624617B2 (ja) | 2011-02-02 |
ATE442638T1 (de) | 2009-09-15 |
DE60042924D1 (de) | 2009-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111508052B (zh) | 三维网格体的渲染方法和装置 | |
US6720961B2 (en) | Method and apparatus for displaying an image in three dimensions | |
DE102009041431B4 (de) | Fahrsimulationsvorrichtung, Weitwinkelkamera-Videosimulationsvorrichtung und Bilddeformierungs-/-zusammensetzungsvorrichtung | |
EP3080781B1 (en) | Image rendering of laser scan data | |
CN1215444C (zh) | 映射和渲染三维目标和活动的三维目标的基于图像的方法 | |
CN1033058C (zh) | 图形显示系统中将选择的点与物体关联的装置与方法 | |
CN1267884C (zh) | 图像数据的非对称超级采样光栅化的方法和系统 | |
KR100239969B1 (ko) | 이미지 발생방법 | |
EP1646010B1 (en) | Method for generating textures for continuous mapping | |
AU2001262560A1 (en) | Method and apparatus for displaying 3d images | |
EP0195501A2 (en) | Improvements in image processing systems and methods | |
JPH0757117A (ja) | テクスチャマップへの索引を生成する方法及びコンピュータ制御表示システム | |
CN102204264A (zh) | 用于编码3d图像信号的方法和系统、编码的3d图像信号、用于译码3d图像信号的方法和系统 | |
CN1489753A (zh) | 三维图像的光栅化 | |
US8698830B2 (en) | Image processing apparatus and method for texture-mapping an image onto a computer graphics image | |
MXPA03002165A (es) | Aceleracion de graficos mejorados por hardware de imagenes orientadas a subcomponentes de pixel. | |
EP0862141A2 (de) | Bilddarstellungsverfahren und Vorrichtung zur Durchführung des Verfahrens | |
CN102737401A (zh) | 一种图形渲染中光栅化阶段的三角片填充方法 | |
WO2013182572A1 (en) | Volumetric display device | |
CN111047711B (zh) | 一种沉浸式可交互Box影像制作方法 | |
CN1294538C (zh) | 改进的s缓冲抗混叠方法 | |
KR20050088191A (ko) | 저비용 수퍼샘플링 래스터화 | |
JP5618391B2 (ja) | 画像処理発光制御システム、発光表示用画像処理プログラム、および画像発光表示方法 | |
US20070257936A1 (en) | Image generator | |
CN103955178B (zh) | 一种立体式动态场景展示系统的升降机构阵列控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: INTEL CORP Free format text: FORMER OWNER: REAL 3D INC Effective date: 20020726 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20020726 Applicant after: Intel Corporation Applicant before: Real 3D Inc |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20070110 Termination date: 20100717 |