当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于降低计算次数的区间算法在射线跟踪问题中的应用制造技术

技术编号:2944661 阅读:282 留言:0更新日期:2012-04-11 18:40
实施例提供了射线跟踪遍历,所述遍历依靠应用的所选几何性质来降低在各个遍历步骤中要求的操作的数量。遍历算法不依赖于组中的射线数目。结果,可以实现多级遍历方案,这始于组中的大量射线并然后按需要减少射线量来维持组相干性。多级遍历方案可通过在遍历加速结构时分割大组的射线来创建。

【技术实现步骤摘要】
【国外来华专利技术】
所要求的专利技术的实现一般可涉及射线跟踪,特别是涉及用于射线跟踪的区间(interval)算法。
技术介绍
射线跟踪是用于与各种J 某体中的波传播有关的多种物理现象的 建模的公知方法。例如,射线跟踪用于在真实感计算机图形学中计算 光照方案,用于在无线通信中的复杂环境信道建才莫,以及在高级音频 应用中的傲锐渲染(aureal rendering)等。射线是一条由位置向量描述的始于空间中的某个点的无限长的 半直线,射线从所述点沿方向向量传播。射线跟踪用在计算机图形学 中,通过沿着由射线的方向向量描述的瞄准线来指引由射线的位置向 量描述的来自着眼点的一条或多条射线,以确定可见度。为了确定沿 那条瞄准线的最近可见表面,要求针对与虛拟场景内所有几何形状的 交点来有效地测试所述射线并保持最近的交点。当以真实值工作时,数据通常由具有有限精度的浮点(FP)数来近 似。在整个数空间中,FP表示是不一致的,并且通常,所需的真实值 (即1/3)由小于或大于所需值的某个值来近似。引入的误差经常是不均 匀的一一精确值和最接近的较低FP近似值之间的差可能远大于或小 于精确值与最接近的较高FP近似值之间的差异。这样的数值误差可 能会在所有的计算中传播和积累,有时造成严重的问题。处理这样的数值不准确的一种方式是使用区间来取代FP近似值。 在这种情况下,任何实数都由2个FP值来表示 一个小于真实值,而另一个大于真实值。边界值在所有的计算中保存,从而产生区间, 所述区间覆盖了精确解。通常,使用区间算法的应用限于某些类别的工作负荷(诸如质量控 制、经济学或量子力学),其中这种区间计算的附加成本明显超过对任何最终值处理不精确的FP数的所推断的成本。附图说明结合到本说明书中并构成本说明书的 一部分的附图,说明了符合 本专利技术原理的一个或多个实现方式,并且与描述一起来解释这样的实 现方式。这些附图不一定按比例绘制,而是重点在于说明本专利技术的原 理。在附图中,图1说明了在二进制树的遍历期间执行的,从公共起点出发通过单元的所跟踪的多条射线的示例;图2说明了遍历通过二进制树的多条射线的区间实现的示例; 图3是流程图,说明了使用区间技术来遍历通过二进制树的多条射线的过程。具体实施例方式以下详细描述涉及附图。在不同的附图中,相同的参考标号可用 于表示相同或相似的要素。在以下描述中,为了解释而非限制的目的, 阐述了诸如特定结构、体系结构、接口、技术等具体细节,以提供 对所要求的专利技术的各个方面的充分理解。然而,对从本公开获益的本领域技术人员来说,很显然,所要求的专利技术的各个方面可以在脱离这 些具体细节的其它示例中实现。在某些实例中,省略了对/>知设备、 电路和方法的描述以免不必要的细节使本专利技术的描述变得不清晰。实施例提供了依靠应用的所选几何性质的射线跟踪遍历,以降低 在各个遍历步骤期间要求的浮点(或其它的数据类型操作诸如整数、 定点)操作的数量。区间遍历算法不依赖于组中的射线数目。多级遍历方案可以实现,这开始于在组中的大量射线并然后按需要减少它以维 持組相干性。在遍历期间可以产生附加的射线来改进高几何复杂度的 区域中产生的图象的反锯齿性质。区间遍历算法組并行几何查询,提 取所选的与整个组相关的公共几何特性,然后仅使用这些特性(而不是 整个组)来执行查询。射线跟踪整体上基于并行几何查询,所述查询针 对某种空间排序的几何数据库来执行。区间遍历算法可^皮扩展以覆盖 其它类型的应用,其中可能针对专用数据库发现并跟踪某些组性质。 本领域的技术人员会认识到本专利技术的实施例不限于浮点实现方式。而 是,本专利技术的实施例专利技术可以用各种数据类型来实现,所述数据类型 包括但不限于整数、定点等。图1说明了用于遍历二进制树的从公共起点106出发通过单元 104的所跟踪的多条射线102的示例100。 一个单元104由分割平面 P0分割为包括最近单元C0 108和最远单元C1 IIO的两个子空间。射 线102可^皮发射通过屏幕上的像素而进入表示某个场景内的所有对象 的数据库中。这些(适当细分的)对象和数据可以表示空的空间,并且 可按分级空间划分结构来存储。发射射线102包括对射线102通过 该结构可采用的路径进行跟踪。并行的可能性存在4旦有限,因为各条 射线可以采用不同的路径来通过该数据库,并且由于数据结构是分级 的,因此在射线/人一级进入下一级时,存在顺序依赖性。数据库可以将对象的分布和空的空间表示为轴对准空间区间的集合。射线的集合可以针对数据库分级结构的任意级另'J(即没有必要从 顶部开始)来直接测试。从该结构向下行进的射线束可纟皮细分。这引发了数值保真度的改进并简化了跟踪射线的过程。特别是, 降低了每条射线所要求的操作的数量,从而引发总体应用性能的改 进。此外,硬件可以设计成直接实现这种区间算法,从而允许附加的 性能改进。射线的发射不是图形学特有的,类似的技术同样可以用来 跟踪各种类型的波的传播,从而为军事目的来计算雷达截面,等等。在射线跟踪环境中,可能要求发射许多条射线。完成该:燥作的一 种方式是确定所有射线与定义场景中的所有几何对象的所有多边形 的交点。完成该操作另 一种方式是将所有的这些多边形划分成轴对准的 划分结构。这种方式的一个实现方式是将整个场景分割成均一立方体 格,同时复制跨立方体边界的多边形。射线可^皮发射并且该射线通过 的立方体可纟皮预测。该射线仅针对这些立方体的每一个的内容来测 试,而忽略其余的因素。由于使用这样的表示相对于对每个多边形测 试每条射线的相对功效,术语"加速结构"可用于描述设计用来降低 射线-多边形交点测试的总数量的任何这样的数据结构。上述的均 一立方格具有以下优点可以容易地计算射线通过立方 体的轨线,以及可以直接访问相关的数据。但是该场景中的细节可能 不是均匀分布的。例如,大量的多边形可能在一个立方体中结束,而 非常少的细节在其它立方体中结束。另一个加速结构构造一般被称作kd-树。在这种加速结构中,一 些成本函数可以用于通过轴-对准的平面来递归地分割场景。最初,该 场景可以由这样的平面分割成两个,然后每一半又可以沿着某个其它 平面分割,等等。这产生了该结构的分级组织。加速结构的各个级别 可以一皮递归地遍历以确定在哪里可以发现该结构的下一个级别。在这 些结构的构造阶段中仔细地选择成本函数以达到最优的性能,同时当 发射可视化需要的各种射线时稍后遍历这些树。kd-树的叶节点表示小的轴对准的单元,其中有某个数量的多边 形。在沿树向上的下一个级别,各个节点表示由叶节点中的两个节点 完全填满的轴对准的框("分割-平面"将4交大体积分割成两个叶单元)。 在下一个级别,各个节点表示由使用类似的分割-平面等的较低级别的节点中的两个节点完全填满的轴对准的框。不要求树是平^f軒的,即任 何内部节点可以分割成叶节点和另一个内部节点。在任何乡合定的级别,射线可以与有界框相交以确定是否(l)该射线完全未命中该框,(2) 射线击中该框并通过"左"子节点,即达到分割-平面的"左"边,(3) 射线击中该框并通过"右"子框,或(4)射线击中并通过两个子框。在第一种情况(l)下,不再需要进一步处理举支低级别的节点,因为射线 "未命中"该树的整个较低部分。本专利技术的实施例适本文档来自技高网...

【技术保护点】
一种用于射线跟踪的方法,包括:    产生一组射线;    对与该组射线相关联的并行几何查询进行分组;    提取所选的与整个组相关的公共几何特性;以及    仅使用所选的特性而不是整个组来针对空间排序的几何数据库执行查询。

【技术特征摘要】
【国外来华专利技术】

【专利技术属性】
技术研发人员:A雷舍托夫A索皮科夫A卡普斯廷J赫尔利
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1