动漫场景画面的光影渲染方法及系统与流程

摘要: 本发明涉及实时渲染,尤其涉及动漫场景画面的光影渲染方法及系统。背景技术:1、实时渲染技术主要涉及在有限计算时间内对三维场景、二维图像元素、材质属性、光照信息、相...
动漫场景画面的光影渲染方法及系统与流程

本发明涉及实时渲染,尤其涉及动漫场景画面的光影渲染方法及系统。

背景技术:

1、实时渲染技术主要涉及在有限计算时间内对三维场景、二维图像元素、材质属性、光照信息、相机视角、屏幕像素结果进行即时计算和显示。

2、现有的实时渲染技术在有限计算时间内对三维场景、二维图像元素、材质属性、光照信息、相机视角、屏幕像素结果进行即时计算和显示时,常规运行重点偏向画面快速成像和基础明暗呈现,像素边缘处理容易围绕屏幕空间差异、固定采样半径、统一颜色输出展开,三维表面曲率、屏幕空间深度、辐射度亮度数值、反照率色彩参量之间缺少连贯约束,导致动漫场景中同一角色在近景和远景之间出现线条粗细不协调,曲面转折位置和轮廓边界位置缺少可控层次;在光照强度变化明显的画面中,统一线宽容易造成受光区域描边过重,暗部区域描边又可能与背景混叠,影响角色轮廓辨识。因此,需要进行改进。

技术实现思路

1、本发明的目的是解决现有技术中存在的缺点,而提出的动漫场景画面的光影渲染方法及系统。

2、为了实现上述目的,本发明采用了如下技术方案,动漫场景画面的光影渲染方法,包括以下步骤:

3、调用渲染管线中的g-buffer法线数据与屏幕空间深度数据,获取曲率变动参量;利用所述屏幕空间深度数据对所述曲率变动参量进行透视衰减运算,建立线宽映射系数;

4、提取屏幕uv坐标参量,按照预设采样频次调取程序化高频噪声序列并叠加至所述屏幕uv坐标参量内,结合坐标位移计算渲染采样偏移的周期扰动值,获取像素微观震荡矩阵;将所述像素微观震荡矩阵与所述线宽映射系数相乘得到融合乘积项,根据所述融合乘积项对像素阵列内的描边算子网格进行混合运算,生成扰动轮廓线宽矩阵;

5、调取延迟渲染管线并读取光照累积缓冲数据,提取所述光照累积缓冲数据内的辐射度亮度数值,建立亮度负相关衰减乘数;将所述亮度负相关衰减乘数与所述扰动轮廓线宽矩阵按像素位置坐标进行计算,获取光照收束线宽集;

6、提取光照方向参量及三维表面法线参量,获取受光面反照特征;结合所述受光面反照特征与黑色基底像素参量进行运算,计算边缘色彩融合量;将所述边缘色彩融合量代入所述光照收束线宽集的对应坐标点内,生成光影描边图像数据。

7、较佳地,所述线宽映射系数的获取步骤为:

8、调用渲染管线中的g-buffer法线数据与屏幕空间深度数据,按照像素位置读取g-buffer法线数据中的三维法线分量,保留屏幕空间深度数据中同一像素位置的深度数值,将三维法线分量输入片元着色器偏导指令,分别求取屏幕横向方向法线差异量和屏幕纵向方向法线差异量,对屏幕横向方向法线差异量和屏幕纵向方向法线差异量进行合并度量,得到法线变动率;

9、基于所述法线变动率,按照像素位置检索相邻像素的法线变动率分布,统计中心像素周围不同方向的法线变化幅度,筛除所述法线变化幅度不满足连续变化关系的相邻像素,提取中心像素对应三维表面局部曲率,将所述三维表面局部曲率按照屏幕像素位置进行排列,得到曲率变动参量;

10、调用屏幕空间深度数据中相同像素位置的深度数值,按照深度数值对所述曲率变动参量进行透视衰减运算,得到缩放值,将所述缩放值输入预设的宽窄映射算式,依据所述缩放值对描边算子的采样半径进行调节,使采样半径随所述曲率变动参量、深度数值产生对应变化,建立线宽映射系数。

11、较佳地,所述像素微观震荡矩阵的获取步骤为:

12、提取屏幕uv坐标参量,按照预设采样频次读取程序化高频噪声序列,将所述程序化高频噪声序列中的扰动采样值逐像素叠加至所述屏幕uv坐标参量,记录所述屏幕uv坐标参量在横向坐标方向、纵向坐标方向的坐标位移,根据坐标位移计算渲染采样偏移在不同采样周期内的偏移幅度,形成像素微观震荡矩阵。

13、较佳地,所述扰动轮廓线宽矩阵的获取步骤为:

14、调用线宽映射系数中对应像素位置的线宽调节量,将所述像素微观震荡矩阵中的横向震荡分量、纵向震荡分量分别同线宽调节量进行逐像素相乘,保留每个像素位置的乘积幅度、乘积方向和采样半径变化关系,得到融合乘积项;

15、基于所述融合乘积项,定位像素阵列内描边算子网格的中心像素位置,读取中心像素周围相邻像素的融合乘积项分布,按照描边算子网格的采样排列顺序进行相邻像素加权混合,筛除不满足描边连续性的孤立线宽变化量,保留满足轮廓方向一致性的线宽变化量,生成扰动轮廓线宽矩阵。

16、较佳地,所述亮度负相关衰减乘数的获取步骤为:

17、调取延迟渲染管线,读取延迟渲染管线中的光照累积缓冲数据,按照像素位置解析光照累积缓冲数据中的辐射度亮度通道,提取每个像素位置对应的辐射度亮度数值,排除未对应有效像素位置的辐射度亮度记录,得到辐射度亮度数值;

18、将每个像素位置的所述辐射度亮度数值输入反向指数衰减算式,按照所述辐射度亮度数值的递增关系进行反向递减处理,计算每个像素位置对应的线宽衰减幅度,保留线宽衰减幅度同像素位置之间的对应关系,建立亮度负相关衰减乘数。

19、较佳地,所述光照收束线宽集的获取步骤为:

20、调用所述扰动轮廓线宽矩阵中相同像素位置的轮廓线宽量值,按照像素位置坐标将所述亮度负相关衰减乘数同轮廓线宽量值进行点对点相乘,依据相乘后的线宽量值收束对应像素位置的线条宽度量值,获取光照收束线宽集。

21、较佳地,所述受光面反照特征的获取步骤为:

22、提取光照方向参量,提取三维表面法线参量,按照像素位置对光照方向参量、三维表面法线参量进行对应匹配,逐像素计算光照方向分量同法线方向分量的点乘数值,将点乘数值逐项对照预设光照阈值进行判断,针对点乘数值大于预设光照阈值的像素位置,读取对应像素的反照率色彩参量,保留反照率色彩参量中的颜色分布信息、明暗响应信息,得到受光面反照特征。

23、较佳地,所述光影描边图像数据的获取步骤为:

24、读取所述受光面反照特征对应像素位置的颜色分量,读取黑色基底像素参量对应像素位置的基底颜色分量,按照相同像素位置进行线性插值混合运算,逐项调节所述受光面反照特征在边缘区域中的颜色参与比例,逐项调节黑色基底像素参量在边缘区域中的颜色参与比例,计算每个像素位置的边缘颜色过渡结果,得到边缘色彩融合量;

25、读取所述光照收束线宽集中各像素位置的线条宽度量值,按照像素位置坐标将所述边缘色彩融合量代入所述光照收束线宽集的对应坐标点,针对具有线条宽度量值的像素位置写入所述边缘色彩融合量,针对不具有线条宽度量值的像素位置保持原有坐标内容不变,完成线条宽度分布与边缘颜色分布的对应整合,生成光影描边图像数据。

26、本发明还提供一种系统,包括:

27、曲率线宽映射模块,用于调用渲染管线中的g-buffer法线数据与屏幕空间深度数据,获取曲率变动参量,利用所述屏幕空间深度数据对所述曲率变动参量进行透视衰减运算,建立线宽映射系数;

28、扰动轮廓生成模块,用于提取屏幕uv坐标参量,按照预设采样频次调取程序化高频噪声序列并叠加至所述屏幕uv坐标参量内,结合坐标位移计算渲染采样偏移的周期扰动值,获取像素微观震荡矩阵,将所述像素微观震荡矩阵与所述线宽映射系数相乘得到融合乘积项,根据所述融合乘积项对像素阵列内的描边算子网格进行混合运算,生成扰动轮廓线宽矩阵;

29、光照线宽收束模块,用于调取延迟渲染管线并读取光照累积缓冲数据,提取所述光照累积缓冲数据内的辐射度亮度数值,建立亮度负相关衰减乘数,将所述亮度负相关衰减乘数与所述扰动轮廓线宽矩阵按像素位置坐标进行计算,获取光照收束线宽集;

30、光影描边融合模块,用于提取光照方向参量及三维表面法线参量,获取受光面反照特征,结合所述受光面反照特征与黑色基底像素参量进行运算,计算边缘色彩融合量,将所述边缘色彩融合量代入所述光照收束线宽集的对应坐标点内,生成光影描边图像数据。

31、与现有技术相比,本发明的优点和积极效果在于:

32、本发明通过调用g-buffer法线数据、屏幕空间深度数据并提取曲率变动参量,像素轮廓不再仅依赖屏幕边缘差异,而是能够按照三维表面弯折程度形成线宽变化基础,曲率变动参量再结合屏幕空间深度数据进行透视衰减运算,能够抑制远景轮廓过度扩张,增强近景角色边缘、物体转折区域、遮挡边界之间的线宽层次一致性;通过屏幕uv坐标参量叠加程序化高频噪声序列,并结合坐标位移计算周期扰动值,能够让描边采样偏移呈现细微变化,减少固定轮廓线在动漫画面中产生的机械感,像素微观震荡矩阵同线宽映射系数相乘后,扰动幅度受到曲率和深度共同约束,能够避免噪声扰动破坏主体轮廓稳定性;通过读取光照累积缓冲数据中的辐射度亮度数值,建立亮度负相关衰减乘数,并按像素位置坐标收束扰动轮廓线宽矩阵,能够在受光区域减少描边厚重感,在暗部区域保留轮廓识别度;通过光照方向参量、三维表面法线参量、反照率色彩参量、黑色基底像素参量之间的运算,能够让边缘色彩融合量随受光面材质色彩和光照朝向变化,生成兼具线宽控制、微观扰动、亮度收束、边缘色彩融合的光影描边图像数据,提升动漫场景实时画面的手绘质感。