CN107330965B - 一种利用局部保守光栅化方法实现硬阴影反走样的方法 - Google Patents
一种利用局部保守光栅化方法实现硬阴影反走样的方法 Download PDFInfo
- Publication number
- CN107330965B CN107330965B CN201710437954.2A CN201710437954A CN107330965B CN 107330965 B CN107330965 B CN 107330965B CN 201710437954 A CN201710437954 A CN 201710437954A CN 107330965 B CN107330965 B CN 107330965B
- Authority
- CN
- China
- Prior art keywords
- depth
- shadow
- map
- triangular
- shadow map
- 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 43
- 238000012360 testing method Methods 0.000 claims abstract description 13
- 238000005070 sampling Methods 0.000 claims description 16
- 238000004422 calculation algorithm Methods 0.000 claims description 14
- 230000000007 visual effect Effects 0.000 claims description 7
- 238000005286 illumination Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims description 3
- 238000011084 recovery Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 4
- 235000006629 Prosopis spicigera Nutrition 0.000 abstract 1
- 240000000037 Prosopis spicigera Species 0.000 abstract 1
- 238000005516 engineering process Methods 0.000 description 5
- 238000009877 rendering Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000005094 computer simulation Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/06—Ray-tracing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
Description
技术领域
本发明涉及一种利用局部保守光栅化方法实现硬阴影反走样的方法,属于3D真实感图形学技术领域。
背景技术
真实感图像生成是计算机图形学重要研究内容之一,也是虚拟现实、混合现实技术的重要组成部分。阴影效果能极大增强虚拟场景的真实感,是虚拟场景中最重要的视觉元素。目前,可交互的阴影绘制技术主要包括:光线跟踪技术、基于几何体的技术和基于图像的技术。其中,基于图像技术的阴影图(Shadow Map,SM)算法是目前应用最广泛的方法,该方法利用场景表面可见点的离散深度图测试采样点的深度,算法的计算时间独立于场景的复杂性,是目前图形硬件支持最广泛的实时阴影绘制技术。阴影图算法包括绘制阶段:首先,从光源视角发射若干条离散光线,计算光线与场景前表面的第一个交点,将最短距离dz存储在Z-buffer中,构成阴影图;然后,从相机视角(View/Camera Space)绘制场景,计算光源到屏幕每个像素对应场景点的距离dp,并比较dp与阴影图中对应坐标存储的深度值dz,当dp>dz时,说明采样点不能被光源直接照射,即处于阴影之中(见附图1)。阴影图算法效率高,但是容易产生锯齿状阴影边界。其主要原因是阴影图的分辨率与屏幕空间的分辨率不匹配。因此,基于阴影图技术的阴影反走样研究是该技术的关键。保守光栅化(ConservativeRasterization)方法由Hasselgren提出(见附图2),该方法通过三角形扩展算法,实现对每个有图元经过的像素都执行光栅化操作。对全部阴影区域执行保守光栅化操作的增加了计算复杂性,根据观察发现,硬阴影的边界走样发生在阴影图的深度不连续区域,因此,本发明提出了一种局部保守光栅化方法的硬阴影反走样方法,本方法通过对深度不连续区域进行识别,然后只对深度不连续区域执行保守光栅化操作,实现局部优化,进而改进绘制效率和效果。首先,方法对阴影图深度值进行分析,利用牛顿二阶差分识别阴影图的深度连续区域和不连续区域。然后,构造几何阴影图,对深度不连续区域采用保守光栅化方法存储表面可见几何面片的顶点,使得有图元经过的像素均能被光栅化生成片元;而对于深度连续的阴影内部区域,则采用非保守光栅化的几何阴影图方法。最后,利用几何阴影图的连续深度测试,以及边界恢复算法,快速实现准确的阴影反走样绘制。
发明内容
本发明的目的在于提供一种利用局部保守光栅化方法实现硬阴影反走样的方法,其有效的降低了保守光栅化几何阴影图方法的计算的复杂度,而且保持了亚像素级硬阴影反走样的精度问题。
本发明的技术方案是这样实现的:一种利用局部保守光栅化方法实现硬阴影反走样的方法,其特征在于:构建光源为视点的阴影图,利用牛顿二阶差分测试深度的连续性,将阴影图分为连续区域Ca和不连续区域Da。再次以光源为视点,抽取三维场景表面可见三角面片信息,存储三角形的顶点信息F,对不连续区域Da实施保守光栅化方法,对连续区域Ca保留其离散深度值,构造深度图T2。根据纹素坐标保持两个深度图的对应关系,其过程可描述为:原始深度图T1,其分辨率为NXN,纹素坐标表示为T1i,j,其中1≤i,j≤N。经过深度划分后,形成深度图T2,使T2保持纹理图T1的分辨率,即T1i,j与T2i,j对应位置具有相同的纹素坐标。最后,进行深度测试判断阴影区域,运用边界恢复算法绘制场景。其具体的方法按以下步骤实现:
步骤1、设三维虚拟场景点光源位置为L,生成以光源位置L为视点的分辨率为NXN的阴影图S。对于S中的离散深度值,执行牛顿二阶差分测试,分别按照水平方向和垂直方向以及对角线方向对阴影图的深度值进行检测,当水平方向和垂直方向及对角线方向的二阶牛顿差分Δ2[d]值分别小于阈值Ed,i和Ed,j时,将S分成深度连续区域Ca和深度不连续区域Da。
设矩阵Ti,j为阴影图中某一纹素,记Ed,i和Ed,j,分别为Ti,j中对应行Ti和列Tj深度值的数学期望,则:
其中,n为阴影图大小。设di,j表示纹素Texeli,j的保守化深度,在公式(1)和公式(2)中,di,k和dk,j分别表示应行Ti和列Tj对应纹素的保守化深度值。
步骤2、再次以光源位置L为视点,开启深度测试生成前表面可见图元;
步骤3、识别、抽取可见图元信息,压缩存储三角形顶点坐标,在一个128位的纹理存储单元中,32位RGB分量存储三角形的2D顶点坐标v0.xy,v1.xy,v2.xy根据顶点坐标计算三角形法向量,用于深度重建,16位用于存储三角形面片深度及三角形ID信息,16位存储三角形斜率,用于计算任意采样点深度值。
步骤4、压缩存储纹素中心深度,法向量及三角形ID。完成抽取场景表面可见三角面片,存储三角形顶点坐标及其中心深度值Dc,形成与S相同尺寸的几何阴影图G。
步骤5、构建S与G的坐标对应关系,由于S与G的大小相同,通过坐标建立对应关系。识别出G中的深度不连续区域范围Da。对Da内的三角形面片开启保守光栅化操作,通过三角形扩展算法,使得对每个有图元经过的像素都执行光栅化操作。对于Ca区域,则直接保持其几何阴影图及纹素中心坐标的离散深度值。
步骤7、深度比较,计算光源到屏幕每个像素对应场景点的距离dp,比较dp与阴影图中对应坐标存储的深度值dz当dp>dz时,采样点处于阴影之中,绘制为暗点,否则为亮点。
步骤8、边界恢复,为了防止细小三角形面皮的缺失,再结合已有的边界恢复方法,完成反走样绘制。
通过以上步骤可以实现精确的硬阴影边界的亚像素级反走样绘制,同时提高绘制效率。
本发明的积极效果是可以提高亚像素级几何阴影图算法的绘制效率,减少了光栅化阶段的像素计算量,提高了传统阴影图算法的绘制效果。该方法在三维虚拟场景绘制,尤其是动态虚拟场景绘制中,对实时性和效果要求较高的环境下具有实际价值,可以用在影视动漫渲染和计算机仿真中。
附图说明
图1阴影图算法阴影绘制原理图。
图2保守光栅化功能示意图。
图3为RGBA缓存存储结构。
图4表面可见几何图元抽取示意图。
具体实施方式
下面结合附图对本发明做进一步的描述:一种利用局部保守光栅化方法实现硬阴影反走样的方法,其特征在于:构建光源为视点的阴影图如图1的深度图,利用牛顿二阶差分测试深度的连续性,将阴影图分为连续区域Ca和不连续区域Da。再次以光源为视点,抽取三维场景表面可见三角面片信息,存储三角形的顶点信息F,对不连续区域Da实施保守光栅化方法,对连续区域Ca保留其离散深度值,根据纹素坐标保持两个深度图的对应关系,即将原始深度图存储为纹理图T1,分辨率为NXN,纹素坐标分别为Tij其中,1≤i,j≤n,对T1进行深度划分后,需保持其分辨率不变,即对应纹素顶点坐标不变。最后,进行深度测试判断阴影区域,运用边界恢复算法绘制场景,其特征在于具体步骤如下:步骤1、设三维虚拟场景点光源位置为L,生成以光源位置L为视点的分辨率为NXN的阴影图S。对于S中的离散深度值,执行牛顿二阶差分测试,分别按照水平方向和垂直方向对阴影图的深度值进行检测,当水平方向和垂直方向的二阶牛顿差分Δ2[d]值分别小于阈值Ed,i和Ed,j时(见公式1和公式2),将S分成深度连续区域Ca和深度不连续区域Da。
设矩阵Ti,j为阴影图中某一纹素,记Ed,i和Ed,j,分别为Ti,j中对应行Ti和列Tj深度值的数学期望,则:
其中,n为阴影图大小,di,j为纹素Texeli,j的保守化深度。深度连续性的定义如公式(3-6)所示:
Rc={Rc,h∩Rc,v∩Rc,d} (6)
步骤2、再次以光源位置L为视点,开启深度测试生成前表面可见图元;
步骤3、识别、抽取可见图元信息,压缩存储三角形顶点坐标,在一个128位的纹理存储单元中,32位RGB分量存储三角形的2D顶点坐标v0.xy,v1.xy,v2.xy,再根据顶点坐标计算三角形法向量,用于深度重建;16位用于存储三角形面片深度及三角形ID信息,16位存储三角形斜率,用于计算任意采样点深度值。
步骤4、压缩存储纹素中心深度,法向量及三角形ID。如图3所示,完成抽取场景表面可见三角面片,存储三角形顶点坐标及其中心深度值Dc,形成与S相同尺寸的几何阴影图G。
步骤5、构建S与G的坐标对应关系,由于S与G的大小相同(分辨率均为NXN),通过坐标建立对应关系。识别出G中的深度不连续区域范围Da。对Da内的几何面片(三角形)开启保守光栅化操作,通过三角形扩展算法,使得对每个有图元经过的像素都执行光栅化操作。对于Ca区域,则直接保持其几何阴影图及纹素中心坐标的离散深度值。
步骤7、深度比较,计算光源到屏幕每个像素对应场景点的距离dp,比较dp与阴影图中对应坐标存储的深度值dz(即重建的深度),当dp>dz时,采样点处于阴影之中,绘制为暗点(处于阴影之中),否则为亮点。通过以上步骤可以实现精确的硬阴影边界的亚像素级反走样绘制,同时提高绘制效率。
步骤8、边界恢复,为了防止细小三角形面片的缺失,结合已有的边界恢复方法,完成反走样绘制。
Claims (1)
1.一种利用局部保守光栅化方法实现硬阴影反走样的方法,其特征在于:构建光源为视点的阴影图,利用牛顿二阶差分测试深度的连续性,将阴影图分为连续区域Ca和不连续区域Da;再次以光源为视点,抽取三维场景表面可见三角面片信息,存储三角形的顶点信息F,对不连续区域Da实施保守光栅化方法,对连续区域Ca保留其离散深度值,构造深度图T2;根据纹素坐标保持两个深度图的对应关系,其过程可描述为:原始深度图T1,其分辨率为NXN,纹素坐标表示为T1i,j,其中1≤i,j≤N;经过深度划分后,形成深度图T2,使T2保持纹理图T1的分辨率,即T1i,j与T2i,j对应位置具有相同的纹素坐标;最后,进行深度测试判断阴影区域,运用边界恢复算法绘制场景;其具体的方法按以下步骤实现:
步骤1、设三维虚拟场景点光源位置为L,生成以光源位置L为视点的分辨率为NXN的阴影图S;对于S中的离散深度值,执行牛顿二阶差分测试,分别按照水平方向和垂直方向以及对角线方向对阴影图的深度值进行检测,当水平方向和垂直方向及对角线方向的二阶牛顿差分Δ2[d]值分别小于阈值Ed,i和Ed,j时,将S分成深度连续区域Ca和深度不连续区域Da;
设矩阵Ti,j为阴影图中某一纹素,记Ed,i和Ed,j,分别为Ti,j中对应行Ti和列Tj深度值的数学期望,则:
其中,n为阴影图大小;设di,j表示纹素Texeli,j的保守化深度,在公式(1)和公式(2)中,di,k和dk,j分别表示应行Ti和列Tj对应纹素的保守化深度值;
步骤2、再次以光源位置L为视点,开启深度测试生成前表面可见图元;
步骤3、识别、抽取可见图元信息,压缩存储三角形顶点坐标,在一个128位的纹理存储单元中,32位RGB分量存储三角形的2D顶点坐标,v0.xy,v1.xy,v2.xy根据顶点坐标计算三角形法向量,用于深度重建,16位用于存储三角形面片深度及三角形ID信息,16位存储三角形斜率,用于计算任意采样点深度值;
步骤4、压缩存储纹素中心深度,法向量及三角形ID;完成抽取场景表面可见三角面片,存储三角形顶点坐标及其中心深度值Dc,形成与S相同尺寸的几何阴影图G;
步骤5、构建S与G的坐标对应关系,由于S与G的大小相同,通过坐标建立对应关系;识别出G中的深度不连续区域范围Da;对Da内的三角形面片开启保守光栅化操作,通过三角形扩展算法,使得对每个有图元经过的像素都执行光栅化操作;对于Ca区域,则直接保持其几何阴影图及纹素中心坐标的离散深度值;
步骤7、深度比较,计算光源到屏幕每个像素对应场景点的距离dp,比较dp与阴影图中对应坐标存储的深度值dz,当dp>dz时,采样点处于阴影之中,绘制为暗点,否则为亮点;
步骤8、边界恢复,为了防止细小三角形面皮的缺失,再结合已有的边界恢复方法,完成反走样绘制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710437954.2A CN107330965B (zh) | 2017-06-12 | 2017-06-12 | 一种利用局部保守光栅化方法实现硬阴影反走样的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710437954.2A CN107330965B (zh) | 2017-06-12 | 2017-06-12 | 一种利用局部保守光栅化方法实现硬阴影反走样的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107330965A CN107330965A (zh) | 2017-11-07 |
CN107330965B true CN107330965B (zh) | 2020-08-04 |
Family
ID=60194976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710437954.2A Expired - Fee Related CN107330965B (zh) | 2017-06-12 | 2017-06-12 | 一种利用局部保守光栅化方法实现硬阴影反走样的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107330965B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108009978B (zh) * | 2017-11-24 | 2021-04-20 | 中国航空工业集团公司西安航空计算技术研究所 | 一种非阻塞并行三角形光栅化单元结构 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7348977B2 (en) * | 2000-07-19 | 2008-03-25 | Pixar | Subsurface scattering approximation methods and apparatus |
CN101982838A (zh) * | 2010-11-02 | 2011-03-02 | 长春理工大学 | 一种加速被面光源照射的3d虚拟场景的光线跟踪的方法 |
CN102568026A (zh) * | 2011-12-12 | 2012-07-11 | 浙江大学 | 一种多视点自由立体显示的三维增强现实方法 |
US8259131B2 (en) * | 2007-07-31 | 2012-09-04 | International Business Machines Corporation | Adaptive sub-sampling for reduction in issued rays |
CN104331918A (zh) * | 2014-10-21 | 2015-02-04 | 无锡梵天信息技术股份有限公司 | 基于深度图实时绘制室外地表遮挡剔除以及加速方法 |
CN104933754A (zh) * | 2015-06-12 | 2015-09-23 | 浙江大学 | 去像素化轮廓线重建的线性阴影图方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9390540B2 (en) * | 2012-12-21 | 2016-07-12 | Nvidia Corporation | Deferred shading graphics processing unit, geometry data structure and method of performing anti-aliasing in deferred shading |
US10229526B2 (en) * | 2014-03-13 | 2019-03-12 | Imagination Technologies Limited | Rendering of soft shadows |
-
2017
- 2017-06-12 CN CN201710437954.2A patent/CN107330965B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7348977B2 (en) * | 2000-07-19 | 2008-03-25 | Pixar | Subsurface scattering approximation methods and apparatus |
US8259131B2 (en) * | 2007-07-31 | 2012-09-04 | International Business Machines Corporation | Adaptive sub-sampling for reduction in issued rays |
CN101982838A (zh) * | 2010-11-02 | 2011-03-02 | 长春理工大学 | 一种加速被面光源照射的3d虚拟场景的光线跟踪的方法 |
CN102568026A (zh) * | 2011-12-12 | 2012-07-11 | 浙江大学 | 一种多视点自由立体显示的三维增强现实方法 |
CN104331918A (zh) * | 2014-10-21 | 2015-02-04 | 无锡梵天信息技术股份有限公司 | 基于深度图实时绘制室外地表遮挡剔除以及加速方法 |
CN104933754A (zh) * | 2015-06-12 | 2015-09-23 | 浙江大学 | 去像素化轮廓线重建的线性阴影图方法 |
Non-Patent Citations (3)
Title |
---|
《Anti-aliasing in image based shadow generation techniques: a comprehensive survey》;Kolivand H等;《Multimedia Tools and Applications》;20151231;第74卷(第18期);第7461-7487页 * |
《基于Wu反走样的三角形光栅化边缘走样算法》;吴连慧 等;《液晶与显示》;20151231;第30卷(第1期);第163-169页 * |
《基于手势的交互式三维场景并行光线跟踪绘制研究》;蒋聪 等;《长春理工大学学报(自然科学版)》;20161231;第39卷(第2期);第94-101页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107330965A (zh) | 2017-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11024077B2 (en) | Global illumination calculation method and apparatus | |
US7348989B2 (en) | Preparing digital images for display utilizing view-dependent texturing | |
Ren et al. | Object space EWA surface splatting: A hardware accelerated approach to high quality point rendering | |
US10776997B2 (en) | Rendering an image from computer graphics using two rendering computing devices | |
CN108986195B (zh) | 一种结合环境映射和全局光照渲染的单镜头混合现实实现方法 | |
US9569884B2 (en) | Method for generating shadows in an image | |
CN108805971B (zh) | 一种环境光遮蔽方法 | |
US20120229460A1 (en) | Method and System for Optimizing Resource Usage in a Graphics Pipeline | |
US11132829B2 (en) | Method for voxel ray-casting of scenes on a whole screen | |
KR102442488B1 (ko) | 그래픽 처리 시스템 및 그래픽 프로세서 | |
US10217259B2 (en) | Method of and apparatus for graphics processing | |
US10388063B2 (en) | Variable rate shading based on temporal reprojection | |
Okura et al. | Mixed-reality world exploration using image-based rendering | |
CN114758051A (zh) | 一种图像渲染方法及其相关设备 | |
Reinbothe et al. | Hybrid Ambient Occlusion. | |
CN104517313A (zh) | 基于屏幕空间的环境光遮蔽的方法 | |
Wißmann et al. | Accelerated stereo rendering with hybrid reprojection-based rasterization and adaptive ray-tracing | |
CN107330965B (zh) | 一种利用局部保守光栅化方法实现硬阴影反走样的方法 | |
US6906729B1 (en) | System and method for antialiasing objects | |
She et al. | A parallelized screen-based method for rendering polylines and polygons on terrain surfaces | |
Dai et al. | Interactive mixed reality rendering on holographic pyramid | |
KR101227155B1 (ko) | 저해상도 그래픽 영상을 고해상도 그래픽 영상으로 실시간 변환하는 그래픽 영상 처리 장치 및 방법 | |
Trapp et al. | Real-time screen-space geometry draping for 3d digital terrain models | |
KR20220164484A (ko) | 섀도우 정보를 이용한 렌더링 | |
Chen et al. | A quality controllable multi-view object reconstruction method for 3D imaging systems |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200804 |