当前位置: 首页 > 专利查询>奥多比公司专利>正文

利用向量交错的部分深度排序制造技术

技术编号:39163746 阅读:16 留言:0更新日期:2023-10-23 15:03
本公开实施例涉及利用向量交错的部分深度排序。公开了用于交错向量对象的实施例。一种交错向量对象的方法可以包括接收对图像的第一向量对象的选择。该方法还可以包括检测图像的第二向量对象,其中第二向量对象不同于第一向量对象。该方法还可以包括确定第一向量对象的第一深度定位和第二向量对象的第二深度定位。该方法还可以包括交错第二向量对象和第一向量对象,其中交错包括基于第一深度定位绘制第一向量对象和基于第二深度定位绘制第二向量对象。向量对象。向量对象。

【技术实现步骤摘要】
利用向量交错的部分深度排序

技术介绍

[0001]在数字图像编辑中,交错(“interlace”)向量对象为平面向量增加了视觉深度。向平面向量添加深度是向量图形最具挑战性的方面中的一个方面。当一个物体位于另一物体的下方或上方时,会出现进一步的挑战。对于丰富的向量设计,诸如一个对象围绕另一对象,使用传统技术,不可能保持两个对象都完好无损。一个对象可以完全位于另一对象下方或完全位于另一对象上方,但不能交错以使该对象部分位于另一对象之上或部分位于另一对象下方。为了使传统技术交错部分上方/下方对象,对象必须被分割成更小的碎片。上方对象的任何重叠部分都需要从下方的对象中移除,以便交错这两个对象。底部对象基于重叠部分被分割成碎片,这将创建多个较小的对象,其中一些对象位于重叠部分中。在交错期间,重叠部分中的较小对象被移除以容纳上方对象。在交错过程中移除的较小对象不可用于任何后续处理,也无法恢复到其原始几何图形。

技术实现思路

[0002]这里介绍了与向量交错和保留原始对象几何图形相关的技术/科技。向量交错系统生成定制绘制命令,该定制绘制命令容纳图像中各种向量对象的深度定位。深度定位表示每个向量对象相对于其他向量对象的位置。向量交错系统使用每个向量对象的深度定位来生成绘制命令,使得仅对于没有绘制具有上部深度定位(例如,上方)的对象的像素来绘制具有下部深度定位(例如,下方)的对象。使用用户对顶部对象和底部对象的选择来分配深度定位。生成绘制命令集并且将其传送到耦合到帧缓冲器的处理器。处理器使用模版(“stencil”)纹理将第一向量对象和第二向量对象写入帧缓冲器。模版纹理的使用为处理器提供了在交错期间保留第一向量对象和第二向量对象的原始几何图形的能力,因为第一向量对象仅在第二向量对象不具有模版纹理值的地方被写入。
[0003]本公开的示例性实施例的附加特征和优点将在下面的描述中阐述,并且部分地将从描述中清楚,或者可以从这些示例性实施例的实践中获知。
附图说明
[0004]详细描述参考附图进行描述,其中:
[0005]图1示出了根据一个或多个实施例的向量交错过程的图示;
[0006]图2示出了具有几何图形分割的向量交错的示例;
[0007]图3示出了根据一个或多个实施例的确定部分深度顺序的示例;
[0008]图4描绘了根据一些实施例的GPU绘制命令集的示例;
[0009]图5示出了根据一个或多个实施例的第一向量对象的部分深度对象操纵的示例;
[0010]图6示出了根据一个或多个实施例的第二向量对象的部分深度对象操纵的示例;
[0011]图7示出了根据一个或多个实施例的向量交错的示例;
[0012]图8示出了根据一个或多个实施例的向量交错系统的示意图;
[0013]图9示出了根据一个或多个实施例的向量交错方法中的一系列动作的流程图;
[0014]图10示出了根据一个或多个实施例的其中向量交错系统可以操作的示例性环境的示意图;以及
[0015]图11示出了根据一个或多个实施例的示例性计算设备的框图。
具体实施方式
[0016]本公开的一个或多个实施例包括使用处理器交错向量对象的向量交错系统。向量交错系统为处理器生成绘图命令以写入帧缓冲器。处理器通过控制绘制命令并且基于每个向量对象的深度定位将向量对象写入一个或多个纹理来执行交错。控制绘制命令包括将设置组应用于帧缓冲器,并且基于向量对象的深度定位来写入一个或多个纹理。通过控制绘制命令,向量交错系统能够在呈现设备上执行视觉交错的同时,保留向量对象的原始几何图形。
[0017]传统技术缺乏保留原始形状的原始几何图形的能力。因此,传统的系统将原始形状划分为较小的形状,并且损害原始几何图形。这导致了不可逆的交错,该交错不能灵活地重新排序对象的深度。
[0018]为了解决传统系统中的这些和其他缺陷,各实施例通过向处理器的帧缓冲器的一个或多个纹理生成绘制命令集来执行向量图形的交错。通过在绘制命令中包括多于一个纹理,向量交错系统可以追踪被交错的对象的深度定位,并且基于深度定位绘制重叠的对象。例如,重叠区域中位于另一对象“下方”的对象将仅在重叠区域以外的位置绘制。这提供了保留原始对象的几何图形的能力,以调整深度定位、对象缩放以及在交错过程中拆分几何图形而降级的其他操纵。
[0019]根据本公开的涉及向量交错的一些技术/科技包括提供改变任何重叠区域的深度排序,同时保留向量对象的原始几何图形的能力。本公开的向量交错提供几何图形操纵到重叠区域的自动映射,以在操纵一个向量对象之后提供有效的重新排序。本公开的向量交错提供了一种稳健的解决方案,其与梯度一起工作,而不会破坏跨不同深度顺序的区域的梯度的连续性。
[0020]各实施例生成用于图形处理器以深度顺序绘制对象的特定绘制命令集,其缓解了如传统技术所需的对象被分解成较小对象的情况。取而代之的是,通过利用绘制命令集来执行交错,所有对象的原始几何图形被保留,从而提供了通过基于相应对象的深度定位的改变而重新绘制对象,来实时执行对象的重新排序的灵活能力。此外,保留原始几何图形允许在编辑对象的大小或尺度时执行向量交错。向量交错系统通过调整绘制命令的参数来在编辑期间高效地执行交错。
[0021]例如,用户可以选择部分重叠的对象。为了交错这些对象,对象中的一个对象被标识为前景对象,而另一对象被标识为背景对象。向量交错系统分析对象以使用对象的位置、对象的任何重叠部分以及来自用户的与预期对象深度顺序相关的选择来确定对象的每个像素的深度顺序(例如,哪个对象在上方/下方)。基于深度顺序,两个对象通过使用具有上部深度定位的对象的位置信息(例如,存储在缓冲器的模版纹理中的值)来绘制具有下部深度定位的对象来交错。然后,具有下部深度定位的(多个)对象仅在未被具有上部深度定位的(多个)对象所占据的位置处绘制(例如使用模版测试)。向量交错系统使用多个纹理为处理器生成定制绘制命令,以使用处理器的帧缓冲器来交错各层。
[0022]图1示出了根据一个或多个实施例的向量交错过程的图示。如图1所示,计算环境100包括向量交错系统106,其包括深度渲染引擎108,该深度渲染引擎108包括光栅化器110,以及处理器,诸如图形处理单元(GPU)112,其包括片段着色器114和帧缓冲器116。在一些实施例中,向量交错系统106被实现为向量图形处理应用或另一计算应用中的模块。
[0023]在标号1处,向量交错系统106获得第一向量对象102和第二向量对象104作为用户输入120。在示例中,第一向量对象102和第二向量对象104是不同的向量对象。第一向量对象102和第二向量对象104由用户从在用户界面中呈现并且包括多个对象的数字画布中选择以供交错。向量交错系统还被配置为从其他计算系统或软件应用接收对象。向量交错系统106可以通过各种对象检测、过滤或搜索方法来确定前景或背景对象,从而将索引分配给第一向量对象102或第二向量对象104。
[0024]在一些实施例中,向量交错系统106本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种方法,包括:由计算机系统的处理器接收对图像的第一向量对象的选择;由计算机系统的所述处理器检测所述图像的第二向量对象,其中所述第二向量对象不同于所述第一向量对象;由计算机系统的所述处理器确定针对所述第一向量对象的第一深度定位和针对所述第二向量对象的第二深度定位;以及由计算机系统的所述处理器交错所述第二向量对象和所述第一向量对象,其中交错包括:基于所述第一深度定位来绘制所述第一向量对象,并且基于所述第二深度定位来绘制所述第二向量对象。2.根据权利要求1所述的方法,其中基于所述深度定位来绘制所述第一向量对象和所述第二向量对象包括:生成帧缓冲器,所述帧缓冲器包括渲染纹理、深度纹理和模版纹理;将所述第二向量对象写入所述渲染纹理和所述深度纹理;将与所述第二向量对象相关联的模版参考值写入所述模版纹理;丢弃所述第一向量对象的一个或多个像素,其中所述第一向量对象的所述一个或多个像素具有对应于像素的位置,所述像素具有与所述第二向量对象相关联的模版参考值;以及将所述第一向量对象写入所述渲染纹理。3.根据权利要求1所述的方法,其中基于所述深度定位来绘制所述第一向量对象和所述第二向量对象包括:生成帧缓冲器,所述帧缓冲器包括渲染纹理、深度纹理和模版纹理;将所述第一向量对象写入所述渲染纹理和所述深度纹理;将与所述第一向量对象相关联的模版参考值写入所述模版纹理;丢弃所述第二向量对象的一个或多个像素,其中所述第二向量对象的所述一个或多个像素具有对应于像素的位置,所述像素具有与所述第一向量对象相关联的模版参考值;以及将所述第二向量对象写入所述渲染纹理。4.根据权利要求1所述的方法,还包括:在绘制之后,接收修改所述第二向量对象或所述第一向量对象的请求;映射针对所述第一向量对象的第三深度定位和针对所述第二向量对象的第四深度定位,其中所述映射基于所述请求;以及基于所述第三深度定位来绘制所述第一向量对象,并且基于所述第四深度定位来绘制所述第二向量对象。5.根据权利要求1所述的方法,其中确定针对所述第一向量对象的第一深度定位和针对所述第二向量对象的第二深度定位包括:保留针对所述第一向量对象和所述第二向量对象两者的像素和形状数据。6.根据权利要求1所述的方法,其中检测所述图像的第二向量对象包括:确定对应于所述第一向量对象的所述图像的一个或多个区域,其中所述一个或多个区域在距所述选择的阈值距离内;以及
确定不对应于所述第一向量对象的所述图像的附加区域,其中所述附加区域被添加到所述第二向量对象。7.根据权利要求6所述的方法,其中交错所述第二向量对象和所述第一向量对象包括:利用不对应于所述第一向量对象的所述图像的所述附加区域来绘制对应于所述第一向量对象的所述图像的所述一个或多个区域。8.根据权利要求1所述的方法,其中所述处理器是图形处理单元GPU。9.一种非瞬态计算机可读存储介质,包括被存储在其上的指令,所述指令当由至少一个处理器执行时,使所述至少一个处理器执行操作,所述操作包括:接收对图像的第一向量对象的选择;检测所述图像的第二向量对象,其中所述第二向量对象不同于所述第一向量对象;确定针对所述第一向量对象的第一深度定位和针对所述第二向量对象的第二深度定位;以及交错所述第二向量对象和所述第一向量对象,其中交错包括:基于所述第一深度定位来绘制所述第一向量对象,并且基于所述第二深度定位来绘制所述第二向量对象。10.根据权利要求9所述的非瞬态计算机可读存储介质,其中基于所述深度定位来绘制所述第一向量对象和所述第二向量对象的操作包括指令,所述指令当由至少一个处理器执行时,使所述至少一个处理器执行操作,所述操作包括:生成帧缓冲器,所述帧缓冲器包括渲染纹理、深度纹理和模版纹理;将所述第二向量对象写入所述渲染纹理和所述深度纹理;将与所述第二向量对象相关联的模版参考值写入所述模版纹理;丢弃所述第一向量对象的一个或多个像素,其中所述第一向量对象的所述一个或多个像素具有对应于像素的位置,所述像素具有与所述第二向量对象相关联的模版参考值;以及将所述第一向量对象写入所述渲染纹理。11.根据权利要求9所述的非瞬态计算机可读存储介质,其中基于所述深度定位来绘制所述第一向量对象和所述第二向量对象的操作包括指令,所述指令当由至少一个处理器执行时,使所述至少一个处理器执行操作,所述操作包括:生成帧缓冲器,所述帧缓冲器包括渲染纹理、深度纹理和模版纹理;将所述第一向量对象写入...

【专利技术属性】
技术研发人员:P
申请(专利权)人:奥多比公司
类型:发明
国别省市:

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

1