[go: up one dir, main page]

CN117392295B - 图形绘制流水线中的粗粒度深度剔除方法及其装置 - Google Patents

图形绘制流水线中的粗粒度深度剔除方法及其装置 Download PDF

Info

Publication number
CN117392295B
CN117392295B CN202210784793.5A CN202210784793A CN117392295B CN 117392295 B CN117392295 B CN 117392295B CN 202210784793 A CN202210784793 A CN 202210784793A CN 117392295 B CN117392295 B CN 117392295B
Authority
CN
China
Prior art keywords
depth
rejection
granularity
test block
range
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
CN202210784793.5A
Other languages
English (en)
Other versions
CN117392295A (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.)
Granfei Intelligent Technology Co ltd
Original Assignee
Granfei Intelligent 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 Granfei Intelligent Technology Co ltd filed Critical Granfei Intelligent Technology Co ltd
Priority to CN202210784793.5A priority Critical patent/CN117392295B/zh
Publication of CN117392295A publication Critical patent/CN117392295A/zh
Application granted granted Critical
Publication of CN117392295B publication Critical patent/CN117392295B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/00Three-dimensional [3D] image rendering
    • G06T15/005General purpose rendering architectures
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

本申请涉及图形绘制技术领域,提供了一种图形绘制流水线中的粗粒度深度剔除方法及其装置。本申请通过图元对应的深度梯度信息自适应调整剔除粒度并灵活选择试验块的深度范围计算方式,能够在计算量和计算精度之间找到最佳平衡,从而可用以替代目前剔除做法中第一部分,将该粗粒度深度剔除部分发挥出最优效果,提高了图形绘制流水线的整体工作效率。

Description

图形绘制流水线中的粗粒度深度剔除方法及其装置
技术领域
本申请涉及图形绘制技术领域,特别是涉及一种图形绘制流水线中的粗粒度深度剔除方法和装置。
背景技术
为满足对可视化界面日益增高的质量要求和进一步提升视觉体验,3D渲染场景日渐复杂。如何在保证处理效率的同时满足相关需求,深度剔除不可或缺。
其中,复杂的渲染场景中难免存在物体之间的相互遮挡,对于离视点比较远的物体,一般会因为被近处物体遮挡而变得不可见或只有部分可见。对于被遮挡的部分,可以用深度剔除将它们从图形绘制流水线中事先剔除,从而最大程度上保证图形流水线上参与绘制像素(或像素中的采样点)的有效性。
为此,在图形绘制流水线中,传统的深度剔除做法是针对每个像素或者像素中的每个采样点所带的深度值进行实验,逐一将不满足条件(如离视点较远)的像素点进行剔除。另外,考虑到像素着色器可能会更新每个像素点的深度值,前述传统的深度剔除是放在像素着色器之后进行的。
为提高像素着色器的渲染效率,目前技术中提出了一种在像素着色器中“输出保守深度值”的概念,以期在图形绘制流水线上尽量将深度剔除提前到像素着色器之前完成,由此只有视点可见的部分会进入像素着色器,进而提高像素着色器的工作有效性。同时,为了提高深度剔除效率,目前技术中还给出了一种基于固定剔除粒度的粗粒度剔除算法。
由此,目前技术中深度剔除可包含三个部分:
第一部分:光栅化之后、像素着色器之前的粗粒度剔除部分。该部分的剔除粒度固定(如固定为8×8像素),其作用是在引入逐像素/采样点这些高精度深度剔除之前、用粗粒度剔除来减少计算量;
第二部分:第一部分剔除之后、像素着色器之前,以期在将像素输入像素着色器前,尽量将其中无效的部分剔除,降低像素着色器的负担;
第三部分:在像素着色器之后,用于处理像素着色器需要输出非保守深度值的场景。在该场景下,无法继续使用根据图元顶点深度值插值出来的各个像素的深度值。
然而,对于目前技术的第一部分,其固定不变的剔除粒度,在一方面,会使深度梯度值较大的图元的剔除不够充分,在另一方面,对于深度梯度值较小的图元,未能在最大程度上将计算量进行优化。
发明内容
基于此,有必要针对上述技术问题,提供一种图形绘制流水线中的粗粒度深度剔除方法和装置。
第一方面,本申请提供了一种图形绘制流水线中的粗粒度深度剔除方法。
所述方法包括:
根据图元对应的深度梯度信息,选择相应的剔除粒度将所述图元分割成多个试验块;
针对每一试验块,根据试验块对应的深度梯度信息,选择相应的深度范围计算方式计算得到所述试验块对应的深度范围;
针对每一试验块,获取试验块对应的背景深度范围,并根据该试验块对应的深度范围与该试验块对应的背景深度范围的比较结果,判断是否剔除该试验块;
将未被剔除的试验块送入后续图形绘制流水线中。
第二方面,本申请还提供了一种图形绘制流水线中的粗粒度深度剔除装置。所述装置包括:
试验块分割模块,用于根据图元对应的深度梯度信息,选择相应的剔除粒度将所述图元分割成多个试验块;
深度范围计算模块,用于针对每一试验块,根据试验块对应的深度梯度信息,选择相应的深度范围计算方式计算得到所述试验块对应的深度范围;
剔除判断模块,用于针对每一试验块,获取试验块对应的背景深度范围,并根据该试验块对应的深度范围与该试验块对应的背景深度范围的比较结果,判断是否剔除该试验块;
后处理模块,用于将未被剔除的试验块送入后续图形绘制流水线中。
上述图形绘制流水线中的粗粒度深度剔除方法及其装置,根据图元对应的深度梯度信息自适应选择合适的剔除粒度,将图元按照其剔除粒度切分成多个试验块,然后对每个试验块依次进行深度剔除,可以有效提高深度剔除效率,由此不会因为剔除粒度固定选择过大而导致深度变化较大的图元未被充分剔除,也不会因为剔除粒度固定选择过小而导致计算量变大而降低剔除效率,并且在计算每个试验块的深度范围时,也会根据其深度梯度信息自适应选择合适的计算方式以保证计算出来的深度范围的精度,能够进一步提高剔除效率。该方案通过图元对应的深度梯度信息自适应调整剔除粒度并灵活选择试验块的深度范围计算方式,能够在计算量和计算精度之间找到最佳平衡,从而可用以替代目前剔除做法中第一部分,将该粗粒度深度剔除部分发挥出最优效果,提高了图形绘制流水线的整体工作效率。
附图说明
图1为一种深度剔除示例的示意图;
图2为目前技术中包含三部分深度剔除的图形绘制流水线的示意图;
图3为包含本申请深度剔除方案的图形绘制流水线的示意图;
图4为一种像素点块的示意图;
图5为一个实施例中图形绘制流水线中的粗粒度深度剔除方法的应用环境图;
图6为一个实施例中图形绘制流水线中的粗粒度深度剔除方法的流程示意图;
图7为一个示例中试验块分割图元的示意图;
图8为一个示例中试验块深度范围计算的示意图;
图9为一个实施例中背景深度范围的使用和更新流程示意图;
图10为一个示例中深度裁剪的示意图;
图11为一个实施例中图形绘制流水线中的粗粒度深度剔除方法的流程示意图;
图12为一个实施例中图形绘制流水线中的粗粒度深度剔除装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请涉及的部分关键字及其英文对照:图形绘制流水线(graphics pipeline)、深度剔除(depth reject)、自适应(adaptive)、像素(pixel)、采样(sample)、像素着色器(pixel shader)、像素点块(pixel tile)、采样点块(sample tile)、深度范围(depthrange)、图元(primitive)、背景(background)。
先对背景技术提及的复杂的渲染场景中难以避免的物体之间的相互遮挡进行说明。其中,对于离视点比较远的物体,一般会因为被近处物体遮挡而变得不可见或者只有部分可见。结合图1,两个三角形相互交错,深色三角形有部分被浅色三角形挡住,而浅色三角形也有一部分被深色三角形遮挡,通过深度剔除,将相互被遮挡的部分全部剔除,保证显示出来的结果满足人眼实际看到的效果。
接着,在图2示出了目前技术中包含三部分深度剔除的图形绘制流水线的示意图,其中,第一部分是光栅化之后、像素着色器之前的粗粒度剔除部分(或称为粗粒度剔除模块),目前这个部分(模块)的剔除粒度固定,如8×8像素,其作用是在引入逐像素/采样点这些高精度深度剔除之前、用粗粒度剔除来减少计算量。
本申请考虑到目前技术所包含的第一部分中剔除粒度固定不变,其会存在一定的缺陷:对深度梯度值较大的图元,固定剔除粒度会导致剔除不够充分,而对于一些深度剔除值较小的图元,固定剔除粒度未能最大程度上将计算量进行优化,为此提供了一种图形绘制流水线中的粗粒度深度剔除方法,以提高各种场景下的深度剔除效率,该方法可根据每个图元自带深度信息进行自适应调节,且在计算每一试验块的深度范围时,同样可以根据图元所带具体深度信息选择一个合适的深度范围计算方法。
如图3所示为包含了本申请深度剔除方案的图形绘制流水线的示意图,本申请使用自适应粗粒度深度剔除部分(模块)替换了图中的“第一部分粗粒度深度剔除”部分(模块),目的在于为各个不同的图元选择一个最适合它的剔除粒度和深度范围计算方法,以求在剔除效率和计算量之间找到一个最佳平衡。由此,在启用后续的高精度(像素或者是采样点粒度)深度剔除工作之前,通过灵活的调整剔除粒度,仅用一次计算就能完成一片相邻的像素点(采样点)的剔除工作。在包含了本申请深度剔除方案的图形绘制流水线中,只有未被“自适应粗粒度深度剔除”部分(模块)剔除掉的像素点块(pixel tile)或是采样点块(sample tile)才能进入后续的流水线中继续处理。
其中,对于像素点块(采样点块),参考图4,像素点块(采样点块)指一定大小的、空间位置相邻的像素(采样点)组成的一个集合,大小可以是8×8像素(采样点),8×16像素(采样点),16×8像素(采样点),16×16像素(采样点)等等。而本申请“自适应粗粒度深度剔除”部分(模块)对于某个图元选择的剔除粒度,可以大于、等于、小于像素点块(采样点块)。
在本申请“自适应粗粒度深度剔除”部分(模块)中,剔除粒度可以灵活调节,对于任意图元,可选择一个合适的剔除粒度后就以该粒度完成该图元所覆盖的所有试验块(大小为所选剔除粒度的若干像素块/采样点块)的剔除工作。对于本申请“自适应粗粒度深度剔除”部分(模块)无法完成剔除的试验块,会传输到后续的流水线中,在“第二/三部分深度剔除”部分(模块)中做像素/采样点级别的精细剔除。
如图5所示为本申请提供的图形绘制流水线中的粗粒度深度剔除方法的应用环境,可称之为自适应粗粒度深度剔除模块,该应用环境具体示出该模块的内部结构,包括以下几个部分:
P1.寄存器池,可用于记录该模块所需要的所有寄存器信息,具体可以包括深度梯度阈值信息(可用于选择剔除粒度、深度范围计算方法)、可选剔除粒度、深度裁剪信息、深度测试信息等等。
P2.内部缓存,可用于缓存背景深度范围数据,能够被本模块实时更新,保证数据的有效性。
P3.剔除粒度选择器,可根据每个图元所带的具体信息,选择适合该图元的剔除粒度,并据此将图元分割成若干试验块。
P4.自适应深度范围计算器,可对于每一试验块,根据输入的深度种子值、深度梯度值等信息,选择一种合适的方法计算该试验块的深度范围。
P5.粗粒度深度裁剪器,可对于每一试验块,进行深度裁剪(depth clip),将处于视锥体之外的试验块提前剔除。
P6.粗粒度深度测试器,对于每一试验块,可结合内部缓存中的深度信息进行深度范围测试,将不满足测试的试验块剔除,将满足测试的送入后续流水线。
基于此,在一个实施例中,如图6所示,本申请提供了一种图形绘制流水线中的粗粒度深度剔除方法,包括以下步骤:
步骤S601,根据图元对应的深度梯度信息,选择相应的剔除粒度将所述图元分割成多个试验块。
本步骤中,对于任意图元,如图7所示,P3剔除粒度选择器可根据已经计算出来的图元对应的深度梯度信息,从可选剔除粒度中选择相应的剔除粒度,并按照所选择的剔除粒度将该图元进行切割,从而分割成多个试验块。
对于剔除粒度,可分别根据图元在横向和纵向的深度梯度值进行选择/确定,在一个实施例中,图元对应的深度梯度信息可以包括图元的横向深度梯度值和纵向深度梯度值,步骤S601具体包括:
获取预设的深度梯度阈值范围;根据横向深度梯度值和纵向深度梯度值各自与深度梯度阈值范围的比较结果,分别选择图元对应的横向剔除粒度和纵向剔除粒度;根据横向剔除粒度和纵向剔除粒度,得到相应的剔除粒度;按照该相应的剔除粒度将图元分割成多个试验块。
具体的,P3剔除粒度选择器可根据前期实验结果确定/设置后续用于比较的深度梯度阈值范围[slope_threshold_min,slope_threshold_max],然后在横向和纵向上,根据横向深度梯度值和纵向深度梯度值各自与该深度梯度阈值范围[slope_threshold_min,slope_threshold_max]的比较结果,分别从可选剔除粒度中选择相应的横向剔除粒度x_reject_size和纵向剔除粒度y_reject_size,从而P3剔除粒度选择器根据所选的横向剔除粒度x_reject_size和纵向剔除粒度y_reject_size,得到最终的相应的剔除粒度x_reject_size*y_reject_size,并按照该剔除粒度x_reject_size*y_reject_size做图元切割。
进一步的,针对上述横向和纵向的剔除粒度的选择,在一个实施例中,具体包括:
对于横向,若横向深度梯度值小于深度梯度阈值范围的最小阈值,则从可选剔除粒度中选择大剔除粒度作为横向剔除粒度;若横向深度梯度值在深度梯度阈值范围内,则从可选剔除粒度中选择中剔除粒度作为横向剔除粒度;若横向深度梯度值大于深度梯度阈值范围的最大阈值,则从可选剔除粒度中选择小剔除粒度作为横向剔除粒度。
具体的,对于横向,若横向深度梯度值小于深度梯度阈值范围的最小阈值slope_threshold_min,则从可选剔除粒度中选择一个如16、32等较大的剔除粒度作为横向剔除粒度x_reject_size;若横向深度梯度值在深度梯度阈值范围[slope_threshold_min,slope_threshold_max]内,则从可选剔除粒度中选择一个如8等折中的剔除粒度作为横向剔除粒度x_reject_size;若横向深度梯度值大于深度梯度阈值范围的最大阈值slope_threshold_max,则从可选剔除粒度中选择一个如2、4等较小的剔除粒度作为横向剔除粒度x_reject_size。
另外,对于纵向,若纵向深度梯度值小于深度梯度阈值范围的最小阈值,则从可选剔除粒度中选择大剔除粒度作为纵向剔除粒度;若纵向深度梯度值在深度梯度阈值范围内,则从可选剔除粒度中选择中剔除粒度作为纵向剔除粒度;若纵向深度梯度值大于深度梯度阈值范围的最大阈值,则从可选剔除粒度中选择小剔除粒度作为纵向剔除粒度。
与横向选择远离相同,对于纵向,若纵向深度梯度值小于深度梯度阈值范围的最小阈值slope_threshold_min,则可选择如16、32等较大的剔除粒度作为纵向剔除粒度y_reject_size;若纵向深度梯度值在深度梯度阈值范围[slope_threshold_min,slope_threshold_max]内,则可选择如8等折中的剔除粒度作为横向剔除粒度x_reject_size;若纵向深度梯度值大于深度梯度阈值范围的最大阈值slope_threshold_max,则可选择如2、4等较小的剔除粒度作为纵向剔除粒度y_reject_size。
由此,P3剔除粒度选择器最终得到剔除粒度x_reject_size*y_reject_size,按照选取的x_reject_size*y_reject_size将该图元进行切割,并将切割出来的各个试验块输出到后续处理单元中逐一做深度剔除,只有未被剔除的试验块才会被送入后续的绘制流水线中进行进一步的高精度深度剔除和渲染。
步骤S602,针对每一试验块,根据试验块对应的深度梯度信息,选择相应的深度范围计算方式计算得到试验块对应的深度范围。
本步骤中,P4自适应深度范围计算器会进行针对每一个试验块的深度范围(primitive_range)计算。其中,P4自适应深度范围计算器可采用多种深度范围计算方式对试验块的深度范围进行计算,可为不同的试验块选择不同的深度范围计算方式计算其深度范围,具体可根据该试验块对应的深度梯度信息选择相应的深度范围计算方式,并按照所选的深度范围计算方式计算得到该试验块对应的深度范围。
对于每一个试验块的深度范围计算方式的选择,在一个实施例中,步骤S602具体包括:
判断试验块对应的深度梯度值是否大于预设门限值;若是,则从可选深度范围计算方式中选择包围盒方式计算得到试验块对应的深度范围;若否,则从可选深度范围计算方式中选择试验块方式计算得到试验块对应的深度范围。
参考图8,本实施例中,在计算每一个试验块的深度范围时,可选深度范围计算方式可包含两种,一种是试验块方式,一种是包围盒方式。其中,试验块方式是指从试验块的四个顶点中选择两个顶点计算深度范围primitive_range的最小值primitive_range.min和最大值primitive_range.max;包围盒方式则是将范围进一步缩小,从该试验块中图元所处包围盒的四个顶点中选取两个顶点计算深度范围primitive_range的最小值primitive_range.min和最大值primitive_range.max。相对而言,包围盒方式的计算过程中多一步包围盒的判断,但是计算出来的深度范围primitive_range更加精确,所以本实施例判断试验块对应的深度梯度值大于预设门限值(超过事先根据实验选择的门限值)时,即深度梯度值较大时,会自动选择包围盒方式计算深度范围primitive_range,否则选择试验块方式计算深度范围primitive_range。
其中,对于试验块方式,进一步的,上述从可选深度范围计算方式中选择试验块方式计算得到试验块对应的深度范围,具体包括:
根据试验块在横向和纵向上的深度梯度增长方向,在试验块的四个顶点中选择两个顶点,并基于该两个顶点计算试验块对应的深度范围。
如图8的左半部分对应的是以MSAA2x为例采用试验块方式计算深度范围,即直接从试验块的四个顶点中选择两个顶点计算深度范围。其中,P1至P4为试验块的四个顶点,根据该试验块在横向和纵向上的深度梯度增长方向(x/y深度梯度增长方向),按照如下表1所示的计算深度范围时选择顶点的准则,选择P1去插值计算深度范围primitive_range的最小值primitive_range.min,及选择P4去计算深度范围primitive_range的最大值primitive_range.max。
表1
其中,对于包围盒方式,进一步的,上述从可选深度范围计算方式中选择包围盒方式计算得到试验块对应的深度范围,具体包括:
根据试验块在横向和纵向上的深度梯度增长方向,在试验块中图元所处包围盒的四个顶点中选择两个顶点,并基于该两个顶点计算试验块对应的深度范围。
如图8的右半部分对应的是以MSAA2x为例采用包围盒方式计算深度范围,即从包围盒的四个顶点中选取两个顶点计算深度范围。其中,P5~P8为试验块中图元的包围盒的四个顶点,该包围盒范围已经按照采样坐标精度进行了调整。同样,根据试验块在横向和纵向上的深度梯度增长方向(x/y深度梯度增长方向),按照如上表1所示的计算深度范围时选择顶点的准则,选择P5计算深度范围primitive_range的最小值primitive_range.min,及选择P8计算深度范围primitive_range的最大值primitive_range.max。
步骤S603,针对每一试验块,获取试验块对应的背景深度范围,并根据该试验块对应的深度范围与该试验块对应的背景深度范围的比较结果,判断是否剔除该试验块。
本步骤中,P6粗粒度深度测试器得到试验块对应的深度范围及其对应的背景深度范围后,需要进行深度范围比较,判断是否剔除该试验块。这一步骤,P6粗粒度深度测试器需要根据具体的深度试验操作符来进行,具体如下:
小于(less):若primitive_range.min>=background_range.max,剔除;
小于等于(less-equal):若primitive_range.min>background_range.max,剔除;
大于(greater):若primitive_range.max<=background_range.min,剔除;
大于等于(greater-equal):若primitive_range.max<background_range.min,剔除;
等于(equal):若primitive_range.min>background_range.max||primitive_range.max<background_range.min,剔除;
不等(not-equal):若primitive_range.min==primitive_range.max&&background_range.min==background_range.max&&primitive_range.min==background_range.min,剔除;
全部剔除(never):全部剔除;
全部保留(always);全部保留。
对于上述试验块对应的背景深度范围的获取,在一个实施例中,上述获取试验块对应的背景深度范围,具体包括:
若内部缓存中存有该试验块对应的背景深度范围,则读取内部缓存中存储的背景深度范围;若内部缓存中未存有该试验块对应的背景深度范围,则从外部存储模块读取该试验块对应的背景深度数据,并根据该试验块对应的背景深度数据计算得到该试验块对应的背景深度范围,及将该背景深度范围存储于所述内部缓存。
具体的,P6粗粒度深度测试器的粗粒度深度测试会涉及到两个深度范围:当前图元被切成的每一个试验块的深度范围[primitive_range.min,primitive_range.max],以及相应于这一试验块的背景深度范围[background_range.min,background_range.max]。P6粗粒度深度测试器的深度测试就是用primitive_range与background_range进行比较,得到测试结果即判断是否剔除该试验块。
而对于深度范围primitive_range的计算已在前述步骤S602中说明,对于背景深度范围的计算在此说明,其可在P2内部缓存中完成。
本实施例中,对于P2内部缓存,其可用于缓存背景深度范围数据,并能够被实时更新,保证数据的有效性。其中,P4深度范围计算器可向P2内部缓存发送“读取背景深度”指令,此时,若P2内部缓存存有该试验块对应的背景深度范围,即P2内部缓存发现所需背景深度信息在本地缓存中,则直接读取出来发送至P6粗粒度深度测试器中;若P2内部缓存未存有该试验块对应的背景深度范围,即P2内部缓存发现所需背景深度信息不在本地,则会向外部存储模块发送读指令,P2内部缓存收到外部存储模块返回的背景深度数据后,根据返回的背景深度数据计算出深度范围将其存储到本地的同时,输出到P6粗粒度深度测试器中。并且,该P2内部缓存中的背景深度范围可根据P6粗粒度深度测试器的测试结果以及试验块对应的深度范围进行实时更新,以保证数据的实时可靠性。
由此,在计算试验块对应的背景深度范围时,一种可行的做法是将当前试验块覆盖的所有像素(采样点)的深度值从外部存储模块读回来后比较得到最大和最小值,并将这两个值存储于P2内部缓存中。
而为了减少从外部存储模块读数据,在一个实施例中,在步骤S603的根据该试验块对应的深度范围与该试验块对应的背景深度范围的比较结果,判断是否剔除该试验块之后,还可以包括以下步骤:
对于未被剔除的试验块,用该未被剔除的试验块对应的深度范围更新内部缓存中对应的背景深度范围。
具体的,本实施例中,如果P6粗粒度深度测试器的测试结果表明该试验块未被剔除,则可以用该未被剔除的试验块对应的深度范围去更新P2内部缓存中中对应的背景深度范围,以供下次进行相同位置的剔除实验时使用。
基于如上所述实施例,示例性的,结合图8和图9,设选取的试验块中包含16个采样点,首次进行深度范围试验时P2内部缓存中一定未存有相应的深度范围数据,所以需要从外部存储模块读取并计算完这16个采样点的背景深度范围后,将背景深度范围存储于P2内部缓存中。从而之后每做完相同位置试验块的深度范围测试后,若试验块未被剔除,则用该未被剔除的试验块的深度范围去更新P2内部缓存中对应的背景深度范围,并将该试验块送入下游模块及选择下一个试验块开始进行测试。
其中,对于未被剔除的试验块,需要用其深度范围去更新P2内部缓存中的背景深度范围,以保证缓存数据的实时性。具体的,用来更新P2内部缓存中的背景深度范围也需要根据具体的深度试验操作符来判断,具体如下:
小于/小于等于(less/less-equal):background.min=min{primitive_range.min,background.min};
大于/大于等于(greater/greater-equal):background.max=max{primitive_range.max,backgroup.max};
等于/全部剔除(equal/never):不更新;
不等/全部保留(not-equal/always):background.min=min{primitive_range.min,background.min},background.max=max{primitive_range.max,backgroup.max}。
此外,在针对每一试验块,获取试验块对应的背景深度范围,根据该试验块对应的深度范围与该试验块对应的背景深度范围的比较结果,判断是否剔除该试验块之前,该方法还可以包括以下步骤:
针对每一试验块,将处于视锥体之外的试验块剔除。
该步骤可由P5粗粒度深度裁剪器进行。如图10所示,P5粗粒度深度裁剪器对于每一试验块进行深度裁剪(depth clip),将处于视锥体之外的试验块提前剔除,即位于视锥体之外的部分都会在这一步被裁剪掉,以节约处理资源。
步骤S604,将未被剔除的试验块送入后续图形绘制流水线中。
本步骤主要是将未被剔除的试验块送入后续图形绘制流水线中,在后续“第二/三部分深度剔除”部分(模块)中做像素/采样点级别的精细剔除。
上述图形绘制流水线中的粗粒度深度剔除方法,根据图元对应的深度梯度信息自适应选择合适的剔除粒度,将图元按照其剔除粒度切分成多个试验块,然后对每个试验块依次进行深度剔除,可以有效提高深度剔除效率,由此不会因为剔除粒度固定选择过大而导致深度变化较大的图元未被充分剔除,也不会因为剔除粒度固定选择过小而导致计算量变大而降低剔除效率,并且在计算每个试验块的深度范围时,也会根据其深度梯度信息自适应选择合适的计算方式以保证计算出来的深度范围的精度,能够进一步提高剔除效率。该方案通过图元对应的深度梯度信息自适应调整剔除粒度并灵活选择试验块的深度范围计算方式,能够在计算量和计算精度之间找到最佳平衡,从而可用以替代目前剔除做法中第一部分,将该粗粒度深度剔除部分发挥出最优效果,提高了图形绘制流水线的整体工作效率。
如图11示出了本申请提供的粗粒度深度剔除方法的整体的流程示意图,首先P3剔除粒度选择器自适应选择图元的剔除粒度并进行试验块分割,然后P4自适应深度范围计算器针对每一试验块自适应计算其对应的深度范围,接着可由P1寄存器池判断是否需要做深度裁剪,若是,则由粗粒度深度裁剪器进行深度裁剪将处于视锥体之外的试验块提前剔除,对于未能通过深度裁剪即已被提前剔除的部分则不需要送入后续模块,对于未被提前剔除或者无需进行深度裁剪的试验块,可继续进行深度测试。此时,可由P1寄存器池判断是否需要做深度测试,若是则由P6粗粒度深度测试器及P2内部缓存对每一试验块进行深度测试,然后对于未通过深度测试的试验块则进行剔除,无需送入后续模块,对于通过深度测试即未被剔除的试验块或者无需做深度测试的试验块,则可根据该试验块的深度范围更新P2内部缓存中对应的背景深度范围,并送入后续图形绘制流水线中,在后续“第二/三部分深度剔除”部分(模块)中做像素/采样点级别的精细剔除。
在整体上,相较于目前技术中的深度剔除模块,本申请使用了自适应粗粒度的深度剔除策略,以替代目前技术中的深度剔除模块,根据每个图元的深度相关信息自适应选择合适的剔除粒度,将每个图元按照它的剔除粒度切分为多个试验块,然后对每个试验块依次进行深度剔除,可以有效的提高深度剔除效率;并且,在计算每个试验块的深度范围时,同样会根据其深度信息选择合适的计算方法,以保证计算出来的深度范围的精度,能够进一步提高剔除效率。
由此本申请所具有的优势包括:1、剔除粒度可根据图元深度信息自适应调节,从而保证粗粒度剔除的剔除效率,不会因为剔除粒度选择过大而导致深度变化较大的图元未被充分剔除,也不会因为剔除粒度选择过小而导致计算量变大、剔除效率降低;2、每个试验块的深度范围计算方式可自动调节,进一步保证剔除效率;3、通过图元自带深度信息自适应调整剔除粒度,加上灵活地选择试验块的深度范围计算方式,能够在计算量与计算精度之间找到最佳平衡,从而将粗粒度深度剔除模块发挥到最优效果,提高了流水线的整体工作效率。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的图形绘制流水线中的粗粒度深度剔除方法的图形绘制流水线中的粗粒度深度剔除装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个图形绘制流水线中的粗粒度深度剔除装置实施例中的具体限定可以参见上文中对于图形绘制流水线中的粗粒度深度剔除方法的限定,在此不再赘述。
在一个实施例中,如图12所示,提供了一种图形绘制流水线中的粗粒度深度剔除装置,该装置1200包括:
试验块分割模块1201,用于根据图元对应的深度梯度信息,选择相应的剔除粒度将所述图元分割成多个试验块;
深度范围计算模块1202,用于针对每一试验块,根据试验块对应的深度梯度信息,选择相应的深度范围计算方式计算得到所述试验块对应的深度范围;
剔除判断模块1203,用于针对每一试验块,获取试验块对应的背景深度范围,并根据该试验块对应的深度范围与该试验块对应的背景深度范围的比较结果,判断是否剔除该试验块;
后处理模块1204,用于将未被剔除的试验块送入后续图形绘制流水线中。
在一个实施例中,所述深度梯度信息包括所述图元的横向深度梯度值和纵向深度梯度值;试验块分割模块1201,用于获取预设的深度梯度阈值范围;根据所述横向深度梯度值和纵向深度梯度值各自与所述深度梯度阈值范围的比较结果,分别选择所述图元对应的横向剔除粒度和纵向剔除粒度;根据所述横向剔除粒度和纵向剔除粒度,得到所述相应的剔除粒度;按照所述相应的剔除粒度将所述图元分割成多个试验块。
在一个实施例中,试验块分割模块1201,用于对于横向,若所述横向深度梯度值小于所述深度梯度阈值范围的最小阈值,则从可选剔除粒度中选择大剔除粒度作为所述横向剔除粒度;若所述横向深度梯度值在所述深度梯度阈值范围内,则从可选剔除粒度中选择中剔除粒度作为所述横向剔除粒度;若所述横向深度梯度值大于所述深度梯度阈值范围的最大阈值,则从可选剔除粒度中选择小剔除粒度作为所述横向剔除粒度;对于纵向,若所述纵向深度梯度值小于所述深度梯度阈值范围的最小阈值,则从可选剔除粒度中选择大剔除粒度作为所述纵向剔除粒度;若所述纵向深度梯度值在所述深度梯度阈值范围内,则从可选剔除粒度中选择中剔除粒度作为所述纵向剔除粒度;若所述纵向深度梯度值大于所述深度梯度阈值范围的最大阈值,则从可选剔除粒度中选择小剔除粒度作为所述纵向剔除粒度。
在一个实施例中,深度范围计算模块1202,用于判断所述试验块对应的深度梯度值是否大于预设门限值;若是,则从可选深度范围计算方式中选择包围盒方式计算得到所述试验块对应的深度范围;若否,则从可选深度范围计算方式中选择试验块方式计算得到所述试验块对应的深度范围。
在一个实施例中,深度范围计算模块1202,用于根据所述试验块在横向和纵向上的深度梯度增长方向,在所述试验块中图元所处包围盒的四个顶点中选择两个顶点,并基于该两个顶点计算所述试验块对应的深度范围。
在一个实施例中,深度范围计算模块1202,用于根据所述试验块在横向和纵向上的深度梯度增长方向,在所述试验块的四个顶点中选择两个顶点,并基于该两个顶点计算所述试验块对应的深度范围。
在一个实施例中,剔除判断模块1203,用于若内部缓存中存有所述试验块对应的背景深度范围,则读取内部缓存中存储的背景深度范围;若所述内部缓存中未存有所述试验块对应的背景深度范围,则从外部存储模块读取所述试验块对应的背景深度数据,并根据所述试验块对应的背景深度数据计算得到所述试验块对应的背景深度范围,及将所述背景深度范围存储于所述内部缓存。
在一个实施例中,后处理模块1204,还用于对于未被剔除的试验块,用该未被剔除的试验块对应的深度范围更新所述内部缓存中对应的背景深度范围。
在一个实施例中,该装置1200还包括:提前剔除模块,用于针对每一试验块,将处于视锥体之外的试验块剔除。
上述图形绘制流水线中的粗粒度深度剔除装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种图形绘制流水线中的粗粒度深度剔除方法,其特征在于,所述方法包括:
根据图元对应的深度梯度信息,选择相应的剔除粒度将所述图元分割成多个试验块;
针对每一试验块,根据试验块对应的深度梯度信息,选择相应的深度范围计算方式计算得到所述试验块对应的深度范围;
针对每一试验块,获取试验块对应的背景深度范围,并根据该试验块对应的深度范围与该试验块对应的背景深度范围的比较结果,判断是否剔除该试验块;
将未被剔除的试验块送入后续图形绘制流水线中;
所述深度梯度信息包括所述图元的横向深度梯度值和纵向深度梯度值;所述根据图元对应的深度梯度信息,选择相应的剔除粒度将所述图元分割成多个试验块,包括:获取预设的深度梯度阈值范围;根据所述横向深度梯度值和纵向深度梯度值各自与所述深度梯度阈值范围的比较结果,分别选择所述图元对应的横向剔除粒度和纵向剔除粒度;根据所述横向剔除粒度和纵向剔除粒度,得到所述相应的剔除粒度;按照所述相应的剔除粒度将所述图元分割成多个试验块;
所述根据所述横向深度梯度值和纵向深度梯度值各自与所述深度梯度阈值范围的比较结果,分别选择所述图元对应的横向剔除粒度和纵向剔除粒度,包括:对于横向,若所述横向深度梯度值小于所述深度梯度阈值范围的最小阈值,则从可选剔除粒度中选择大剔除粒度作为所述横向剔除粒度;若所述横向深度梯度值在所述深度梯度阈值范围内,则从可选剔除粒度中选择中剔除粒度作为所述横向剔除粒度;若所述横向深度梯度值大于所述深度梯度阈值范围的最大阈值,则从可选剔除粒度中选择小剔除粒度作为所述横向剔除粒度;对于纵向,若所述纵向深度梯度值小于所述深度梯度阈值范围的最小阈值,则从可选剔除粒度中选择大剔除粒度作为所述纵向剔除粒度;若所述纵向深度梯度值在所述深度梯度阈值范围内,则从可选剔除粒度中选择中剔除粒度作为所述纵向剔除粒度;若所述纵向深度梯度值大于所述深度梯度阈值范围的最大阈值,则从可选剔除粒度中选择小剔除粒度作为所述纵向剔除粒度。
2.根据权利要求1所述的方法,其特征在于,所述根据试验块对应的深度梯度信息,选择相应的深度范围计算方式计算得到所述试验块对应的深度范围,包括:
判断所述试验块对应的深度梯度值是否大于预设门限值;
若是,则从可选深度范围计算方式中选择包围盒方式计算得到所述试验块对应的深度范围;
若否,则从可选深度范围计算方式中选择试验块方式计算得到所述试验块对应的深度范围。
3.根据权利要求2所述的方法,其特征在于,所述从可选深度范围计算方式中选择包围盒方式计算得到所述试验块对应的深度范围,包括:
根据所述试验块在横向和纵向上的深度梯度增长方向,在所述试验块中图元所处包围盒的四个顶点中选择两个顶点,并基于该两个顶点计算所述试验块对应的深度范围。
4.根据权利要求2所述的方法,其特征在于,所述从可选深度范围计算方式中选择试验块方式计算得到所述试验块对应的深度范围,包括:
根据所述试验块在横向和纵向上的深度梯度增长方向,在所述试验块的四个顶点中选择两个顶点,并基于该两个顶点计算所述试验块对应的深度范围。
5.根据权利要求1所述的方法,其特征在于,所述获取试验块对应的背景深度范围,包括:
若内部缓存中存有所述试验块对应的背景深度范围,则读取内部缓存中存储的背景深度范围;
若所述内部缓存中未存有所述试验块对应的背景深度范围,则从外部存储模块读取所述试验块对应的背景深度数据,并根据所述试验块对应的背景深度数据计算得到所述试验块对应的背景深度范围,及将所述背景深度范围存储于所述内部缓存。
6.根据权利要求5所述的方法,其特征在于,所述根据该试验块对应的深度范围与该试验块对应的背景深度范围的比较结果,判断是否剔除该试验块之后,所述方法还包括:
对于未被剔除的试验块,用该未被剔除的试验块对应的深度范围更新所述内部缓存中对应的背景深度范围。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述针对每一试验块,获取试验块对应的背景深度范围,根据该试验块对应的深度范围与该试验块对应的背景深度范围的比较结果,判断是否剔除该试验块之前,所述方法还包括:
针对每一试验块,将处于视锥体之外的试验块剔除。
8.一种图形绘制流水线中的粗粒度深度剔除装置,其特征在于,所述装置包括:
试验块分割模块,用于根据图元对应的深度梯度信息,选择相应的剔除粒度将所述图元分割成多个试验块;
深度范围计算模块,用于针对每一试验块,根据试验块对应的深度梯度信息,选择相应的深度范围计算方式计算得到所述试验块对应的深度范围;
剔除判断模块,用于针对每一试验块,获取试验块对应的背景深度范围,并根据该试验块对应的深度范围与该试验块对应的背景深度范围的比较结果,判断是否剔除该试验块;
后处理模块,用于将未被剔除的试验块送入后续图形绘制流水线中;
所述深度梯度信息包括所述图元的横向深度梯度值和纵向深度梯度值;试验块分割模块,用于获取预设的深度梯度阈值范围;根据所述横向深度梯度值和纵向深度梯度值各自与所述深度梯度阈值范围的比较结果,分别选择所述图元对应的横向剔除粒度和纵向剔除粒度;根据所述横向剔除粒度和纵向剔除粒度,得到所述相应的剔除粒度;按照所述相应的剔除粒度将所述图元分割成多个试验块;
试验块分割模块,用于对于横向,若所述横向深度梯度值小于所述深度梯度阈值范围的最小阈值,则从可选剔除粒度中选择大剔除粒度作为所述横向剔除粒度;若所述横向深度梯度值在所述深度梯度阈值范围内,则从可选剔除粒度中选择中剔除粒度作为所述横向剔除粒度;若所述横向深度梯度值大于所述深度梯度阈值范围的最大阈值,则从可选剔除粒度中选择小剔除粒度作为所述横向剔除粒度;对于纵向,若所述纵向深度梯度值小于所述深度梯度阈值范围的最小阈值,则从可选剔除粒度中选择大剔除粒度作为所述纵向剔除粒度;若所述纵向深度梯度值在所述深度梯度阈值范围内,则从可选剔除粒度中选择中剔除粒度作为所述纵向剔除粒度;若所述纵向深度梯度值大于所述深度梯度阈值范围的最大阈值,则从可选剔除粒度中选择小剔除粒度作为所述纵向剔除粒度。
9.根据权利要求8所述的装置,其特征在于,深度范围计算模块,用于判断所述试验块对应的深度梯度值是否大于预设门限值;若是,则从可选深度范围计算方式中选择包围盒方式计算得到所述试验块对应的深度范围;若否,则从可选深度范围计算方式中选择试验块方式计算得到所述试验块对应的深度范围。
10.根据权利要求9所述的装置,其特征在于,深度范围计算模块,用于根据所述试验块在横向和纵向上的深度梯度增长方向,在所述试验块中图元所处包围盒的四个顶点中选择两个顶点,并基于该两个顶点计算所述试验块对应的深度范围。
CN202210784793.5A 2022-07-05 2022-07-05 图形绘制流水线中的粗粒度深度剔除方法及其装置 Active CN117392295B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210784793.5A CN117392295B (zh) 2022-07-05 2022-07-05 图形绘制流水线中的粗粒度深度剔除方法及其装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210784793.5A CN117392295B (zh) 2022-07-05 2022-07-05 图形绘制流水线中的粗粒度深度剔除方法及其装置

Publications (2)

Publication Number Publication Date
CN117392295A CN117392295A (zh) 2024-01-12
CN117392295B true CN117392295B (zh) 2024-09-06

Family

ID=89436054

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210784793.5A Active CN117392295B (zh) 2022-07-05 2022-07-05 图形绘制流水线中的粗粒度深度剔除方法及其装置

Country Status (1)

Country Link
CN (1) CN117392295B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101600115A (zh) * 2009-06-29 2009-12-09 中国航空工业集团公司洛阳电光设备研究所 一种剔除图像稳像系统周期性特征块的方法
CN109643464A (zh) * 2016-09-16 2019-04-16 英特尔公司 用于高效深度预过程的方法和装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU5688199A (en) * 1998-08-20 2000-03-14 Raycer, Inc. System, apparatus and method for spatially sorting image data in a three-dimensional graphics pipeline
AU1776001A (en) * 1999-11-18 2001-05-30 Info Assets, Inc. Rendering image data
US20150373153A1 (en) * 2010-06-30 2015-12-24 Primal Space Systems, Inc. System and method to reduce bandwidth requirement for visibility event packet streaming using a predicted maximal view frustum and predicted maximal viewpoint extent, each computed at runtime
US9324180B2 (en) * 2013-12-09 2016-04-26 Intel Corporation Culling using masked depths
US10846915B2 (en) * 2018-03-21 2020-11-24 Intel Corporation Method and apparatus for masked occlusion culling
US11315225B2 (en) * 2019-06-20 2022-04-26 Samsung Electronics Co., Ltd. Coarse depth culling during binning
CN112053447B (zh) * 2020-07-29 2022-10-25 清华大学 一种增强现实三维注册方法及装置
CN113989205A (zh) * 2021-10-20 2022-01-28 重庆科技学院 基于梯度余弦相似的orb误匹配剔除算法
CN114219898B (zh) * 2021-12-21 2024-04-16 山西大学 一种基于光学图像的选择性集成三维重建方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101600115A (zh) * 2009-06-29 2009-12-09 中国航空工业集团公司洛阳电光设备研究所 一种剔除图像稳像系统周期性特征块的方法
CN109643464A (zh) * 2016-09-16 2019-04-16 英特尔公司 用于高效深度预过程的方法和装置

Also Published As

Publication number Publication date
CN117392295A (zh) 2024-01-12

Similar Documents

Publication Publication Date Title
US11657565B2 (en) Hidden culling in tile-based computer generated images
US20230088494A1 (en) Tessellating patches of surface data in tile based computer graphics rendering
US12190449B2 (en) Tessellation of patches of surfaces in a tile based rendering system
US8497876B2 (en) Infinite complexity deep-framebuffer rendering
US9530241B2 (en) Clipping of graphics primitives
KR102370617B1 (ko) 적응적 샘플링을 수행하여 영상을 처리하는 방법 및 장치.
US20080136816A1 (en) Three dimensional graphics system with early occlusion culling using z-ranges
US20030160785A1 (en) Texture map editing
Lauritzen et al. Layered variance shadow maps.
US20090033659A1 (en) Real-time luminosity dependent subdivision
US20210287418A1 (en) Graphics processing unit render mode selection system
Sander et al. Progressive buffers: view-dependent geometry and texture lod rendering
KR20160068204A (ko) 메시 지오메트리를 위한 데이터 처리 방법 및 이를 기록한 컴퓨터 판독 가능 저장 매체
CN117392295B (zh) 图形绘制流水线中的粗粒度深度剔除方法及其装置
CN107292946B (zh) 一种基于brdf函数线性过滤的图像渲染方法
Dyken et al. Real‐Time GPU Silhouette Refinement using Adaptively Blended Bézier Patches
US9519997B1 (en) Perfect bounding for optimized evaluation of procedurally-generated scene data
CN115063496A (zh) 一种点云数据快速处理方法及装置
CN115049531A (zh) 图像渲染方法、装置、图形处理设备及存储介质
GB2605360A (en) Method, Apparatus and Storage Medium for Realizing Geometric Viewing Frustum of OCC Tree in Smart City
Farias Point cloud rendering using jump flooding
CN118537465A (zh) 一种剖切物体的剖面渲染方法、装置、设备及介质
WO2023208385A1 (en) A soft shadow algorithm with contact hardening effect for mobile gpu
CN121437714A (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
CB02 Change of applicant information
CB02 Change of applicant information

Country or region after: China

Address after: 200135, 11th Floor, Building 3, No. 889 Bibo Road, China (Shanghai) Pilot Free Trade Zone, Pudong New Area, Shanghai

Applicant after: Granfei Intelligent Technology Co.,Ltd.

Address before: 200135 Room 201, No. 2557, Jinke Road, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai

Applicant before: Gryfield Intelligent Technology Co.,Ltd.

Country or region before: China

GR01 Patent grant
GR01 Patent grant