CN114049421A - 基于cpu的静态场景光线追踪棋盘渲染方法、系统及存储介质 - Google Patents
基于cpu的静态场景光线追踪棋盘渲染方法、系统及存储介质 Download PDFInfo
- Publication number
- CN114049421A CN114049421A CN202111395935.0A CN202111395935A CN114049421A CN 114049421 A CN114049421 A CN 114049421A CN 202111395935 A CN202111395935 A CN 202111395935A CN 114049421 A CN114049421 A CN 114049421A
- Authority
- CN
- China
- Prior art keywords
- pixel
- point
- rendering
- chessboard
- ray tracing
- 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.)
- Pending
Links
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/005—General purpose rendering architectures
-
- 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
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Image Generation (AREA)
Abstract
本发明涉及计算机图形学渲染技术领域,具体为基于CPU的静态场景光线追踪棋盘渲染方法、系统及存储介质,其方法包括:根据点光源与几何物体的坐标构建三维场景;设置历史像素值缓冲区和历史碰撞点坐标缓冲区;计算三维场景中每个几何物体的边界包围盒;使用编程方式实现奇偶棋盘采样,获得采样像素点;如果摄像机静止,在渲染阶段利用棋盘式光线追踪算法得到半分辨率的渲染帧,再结合历史像素值缓冲区的像素值,叠加得到全分辨率的目标图像;如果摄像机通过用户交互而运动,通过交互修正算法得到全分辨率的目标图像。本发明构建三维场景,将像素空间分块,使用CPU并行计算和边界包围盒实现渲染加速,取得了减少帧缓存、提高实时交互帧率的效果。
Description
技术领域
本发明涉及计算机图形学渲染技术领域,具体为基于CPU的静态场景光线追踪棋盘渲染方法、系统及存储介质。
背景技术
光线追踪是三维计算机图形学中的一种渲染方法,它作为一种全局光照渲染技术,能够模拟光线在现实世界中的物理传播行为。相比传统的光栅化渲染,光线追踪能实现更高质量的渲染效果,但是它需要大量光线遍历场景几何体,其计算成本相对较高。在静态场景下光线追踪将每条光线当作独立的光线,每次都需要重新计算,导致每秒需要计算大量的光线,总体的渲染计算成本高,进而出现渲染时间长、实时交互帧率低等问题。
棋盘渲染是一种生成全分辨率像素的技术,它通过将当前帧的计算量减半来减少渲染时间,提升实时交互性能。将棋盘渲染技术应用于光线追踪可以实现其实时性能的提升,从而满足一定的实时交互性能需求。然而现有的棋盘渲染方法研究都集中在光栅化渲染领域,缺乏在光线追踪领域的研究工作。
由于近年来硬件性能的提升,出现了许多基于GPU的光线追踪算法。GPU的并行计算能力强,内存带宽高且运行速度快,可有效提高渲染帧率。但是基于GPU加速的方法对图形硬件的要求高,且不支持内存的动态分配,并不具备良好的通用性。
发明内容
为解决现有技术所存在的技术问题,本发明提供基于CPU的静态场景光线追踪棋盘渲染方法、系统及存储介质,构建三维场景,将像素空间分块,使用奇偶棋盘采样、CPU并行计算和边界包围盒来实现渲染加速,取得了减少渲染计算量、提高实时交互帧率的技术效果。
本发明方法采用以下技术方案来实现:基于CPU的静态场景光线追踪棋盘渲染方法,包括以下步骤:
步骤S1、根据点光源与几何物体的坐标构建三维场景,初始化摄像机位置;
步骤S2、设置一个历史像素值缓冲区和一个历史碰撞点坐标缓冲区;
步骤S3、计算三维场景中每个几何物体的边界包围盒;
步骤S4、在采样阶段,使用编程方式实现奇偶棋盘采样,获得采样像素点;
步骤S5、如果摄像机静止,则在渲染阶段,利用棋盘式光线追踪算法得到半分辨率的渲染帧,再结合历史像素值缓冲区的像素值,叠加得到全分辨率的目标图像;
步骤S6、如果摄像机通过用户的交互而运动,则通过交互修正算法来得到全分辨率的目标图像。
本发明系统采用以下技术方案来实现:基于CPU的静态场景光线追踪棋盘渲染系统,包括:
三维场景构建模块,根据点光源与几何物体的坐标构建三维场景,初始化摄像机位置;
缓冲区设置模块,设置一个历史像素值缓冲区和一个历史碰撞点坐标缓冲区;
边界包围盒计算模块,计算三维场景中每个几何物体的边界包围盒;
奇偶棋盘采样模块,使用编程方式实现奇偶棋盘采样,获得采样像素点;
追踪渲染模块,如果摄像机静止,则在渲染阶段,利用棋盘式光线追踪算法得到半分辨率的渲染帧,再结合历史像素值缓冲区的像素值,叠加得到全分辨率的目标图像;如果摄像机通过用户的交互而运动,则通过交互修正算法来得到全分辨率的目标图像。
本发明的存储介质,其上存储有计算机可执行指令,所述计算机可执行指令由计算机处理器执行时,用于实现本发明静态场景光线追踪棋盘渲染方法。
在本发明追踪渲染的过程中,如果摄像机静止,通过奇偶棋盘采样、棋盘式光线追踪渲染和前后帧图像叠加来得到全分辨率目标图像,这样能节省计算量,从而减少图像渲染的时间,提高帧率;如果摄像机运动,采用奇偶棋盘采样、棋盘式光线追踪渲染、重投影方法和八邻居插值去噪方法来得到全分辨率目标图像,这样能提高实时交互帧率。
本发明与现有技术相比,具有如下优点和有益效果:
1、相比于现有技术中计算全分辨率图像,本发明采用奇偶棋盘采样和前后帧图像叠加方法,减少了光线追踪渲染每帧图像的计算量,从而减少图像渲染的时间以及提高实时交互帧率。
2、由于采用光线追踪渲染方法,相对于光栅化渲染能提高渲染质量。
3、由于采用边界包围盒结构,而边界包围盒和光线的求交运算快,能快速过滤掉与光线不相交的物体,从而实现渲染加速。
4、由于采用CPU并行运算,可以提高光线追踪渲染效率,提高计算机资源的利用率。
5、由于采用重投影方法和八邻居插值去噪方法,避免出现摄像机运动过程中棋盘渲染的混叠问题。
附图说明
图1是本发明的光线追踪棋盘渲染原理示意图;
图2是本发明光线追踪棋盘渲染方法的流程图;
图3是奇偶棋盘采样方法示意图;
图4是棋盘式光线追踪算法流程图;
图5是空间块并行计算示意图;
图6是前后帧叠加方法示意图;
图7是交互修正算法流程图;
图8是八邻居插值去噪方法示意图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例1
如图1、2所示,本实施例基于CPU的静态场景光线追踪棋盘渲染方法的具体步骤如下:
步骤S1、根据点光源与几何物体的坐标构建三维场景,初始化摄像机位置。
其中,三维场景中包括点光源、遮挡物以及场景物体等所有几何物体。
步骤S2、设置一个历史像素值缓冲区,用于存储像素颜色值,其大小为屏幕像素数量的二分之一,初始值设为场景背景色;同时,设置一个历史碰撞点坐标缓冲区。
场景背景色选取为纯黑色;历史碰撞点坐标缓冲区存储棋盘式光线追踪算法中光线和物体第一个碰撞点的坐标,以及相应的像素点坐标,其大小为屏幕像素数量的二分之一。
步骤S3、计算三维场景中每个几何物体的边界包围盒。方法为先计算出几何物体的重心坐标O,定义几何物体重心位置到摄像机位置的向量为正方向,然后以几何物体的重心O为起点,向正、反、左、右、上、下六个方向投出射线P(t)=O+td,其中d为射线方向,t为时间;设单位时间为2ms,每经过一个单位时间计算射线到达的点K,计算出垂直于射线并经过点K的平面,若平面与几何物体不相交,则保存该平面作为边界;最终得到六个方向上的平面,六个平面边界组成的包围盒即为边界包围盒。
边界包围盒为六面长方体,把物体包围起来,如果光线与包围盒不相交,表明光线一定不会和包围盒里的几何物体相交。本实施例中,由于边界包围盒和光线的求交运算快,能快速过滤掉与光线不相交的物体。
步骤S4、在采样阶段,使用编程方式实现奇偶棋盘采样,获得采样像素点。
如图3所示,方法为将前后交替的两帧分别定义为奇帧和偶帧,对于每一帧设置一个奇偶标志位,如果奇偶标志位为1表示该帧为奇数帧,如果奇偶标志位为0表示该帧为偶数帧。奇数帧表示当前帧的编号为奇数,如第一帧为奇数帧;偶数帧表示当前帧的编号为偶数,如第二帧为偶数帧。奇偶棋盘采样时遍历每一行像素,对于奇数帧,如果是奇数行,只采样该行编号为奇数的像素,如果是偶数行,只采样该行编号为偶数的像素;对于偶数帧,如果是奇数行,只采样该行编号为偶数的像素,如果是偶数行,只采样改行编号为奇数的像素。
步骤S5、如果摄像机静止,则在渲染阶段,如图6所示,利用棋盘式光线追踪算法得到半分辨率的渲染帧,再结合历史像素值缓冲区的像素值,叠加得到全分辨率的目标图像。
摄像机静止指用户没有进行实时交互行为。具体来说,如图4所示,步骤S5中的棋盘式光线追踪算法的具体步骤为步骤S51到步骤S57。
步骤S51、如图5所示,对像素空间进行分块,得到多个像素空间块,每个像素空间块的大小为2*2,即每个像素空间块包含4个像素点。将每个像素空间块的计算分配给不同CPU线程,每个CPU线程同时执行渲染任务。
像素空间为显示屏幕的像素点空间,例如显示分辨率为3840*2160屏幕,其像素空间含3840*2160个像素点。将像素空间块大小设为2*2有利于棋盘渲染的重建。
步骤S52、光线从摄像机位置出发,经过步骤S4采样方式确定的采样像素点,射向三维场景中,并判断三维场景中边界包围盒与光线的相交情况。
步骤S53、若光线与所有边界包围盒都不相交,则结束该光线的追踪;否则计算第一个边界包围盒内几何物体与光线的相交情况,如果有碰撞点则记录该碰撞点坐标,否则计算第二个边界包围盒内几何物体与光线的相交情况,以此类推,直到找到一个碰撞点并转入步骤S54,若均无碰撞点则结束该光线的追踪且相应像素颜色取为背景色。
步骤S54、若碰撞点与各个点光源之间存在有障碍物,则判断碰撞点在阴影区域,进行阴影计算得到像素值,否则转入步骤S55。阴影的计算方程如下:
Lo=Lb+0.1*Le+0.5*Σ(Id+Is)
其中,Lo为最终的像素颜色,Lb为纯黑色值,Le为物体本身的颜色值,∑(Id+Is)为其它距离间不含障碍物的点光源所产生的光照贡献值累加项;Id为该点光源下物体的漫反射分量,Id=ld*md*max(dot(N,L),0),ld为该点光源的漫反射系数,md为物体的漫反射系数,N为法线向量,L为光线入射方向向量,dot为点乘运算;Is为该点光源下物体的高光分量,用于展现高光效果,Is=ls*ms*max(dot(H,N)12,s*2),s为物体的光泽度,用于表现极端闪亮的物体,因为它的高光非常小,如镜子等,乘以2是为了改善高光的微调;ls为该点光源的高光系数,ms为物体的高光系数,计算12次幂是为了降低高光对像素点颜色值的影响;H为视线向量。
步骤S55、通过碰撞点坐标计算出视线向量以及相应的法向量。并将碰撞点坐标存储到历史碰撞点坐标缓冲区。
每个采样像素点对应一条光线;视线向量为以摄像机为起点,朝向碰撞点的单位向量。
步骤S56、通过渲染方程计算每个像素点的颜色值,渲染方程如下:
Lo=Le+∑(Id+Is)
其中,Lo为最终的像素颜色,Le为物体本身的颜色值,∑(Id+Is)为不同点光源所产生的光照贡献值的累加项,Id为该点光源下物体的漫反射分量,Id=ld*md*max(dot(N,l),0),ld为该点光源的漫反射系数,md为物体的漫反射系数,N为法线向量,L为光线入射方向向量,dot为点乘运算;Is为该点光源下物体的高光分量,用于展现高光效果,Is=ls*ms*max(dot(H,N)12,s*2),s为物体的光泽度,用于表现极端闪亮的物体,因为它的高光非常小,如镜子等,乘以2是为了改善高光的微调;ls为该点光源的高光系数,ms为物体的高光系数,计算12次幂是为了降低高光对像素点颜色值的影响;H为步骤S55计算出来的视线向量。
步骤S57、将像素点的颜色值存储在历史像素值缓冲区中,并替换缓冲区中原来的颜色值。
步骤S6、如果摄像机通过用户的交互而运动,如用户通过鼠标键盘控制摄像机的移动和缩放等,需要通过交互修正算法来得到全分辨率的目标图像。
在实时交互中,前后两帧的显示内容与视口(viewport)有区别,如果仅使用步骤S5的渲染方法会出现混叠等问题,引入交互修正算法可用来解决这些问题。如图7所示,步骤S6中的交互修正算法的具体步骤如下:
步骤S61、由步骤S5中的棋盘式光线追踪算法得到全分辨率图像。
步骤S62、遍历每一个像素点,从历史碰撞点坐标缓冲区中取出像素点对应的历史碰撞点坐标,采用相似三角形方法将历史碰撞点的三维坐标变换为当前帧中的UV坐标。
步骤S63、在摄像机坐标系下,将摄像机、历史碰撞点和像素空间平面连接形成相似三角形,然后利用摄影机到像素平面的距离求该碰撞点在像素屏幕中的x坐标和y坐标。根据x坐标、y坐标以及历史像素值缓冲区得到当前像素的颜色值。
上述的两个步骤为重投影方法。
步骤S64、处理完每一个像素点,得到新的全分辨率图像。
步骤S65、对于步骤S64得到的全分辨率图像,使用八邻居插值去噪方法处理得到目标图像。如图8所示,方法为遍历每一个像素,若该像素为背景色,且四个基本相邻方向的像素颜色均不为背景色,则计算该像素周围八个像素颜色值的平均值,然后这八个像素值与平均值做色差计算,取色差最小的四个相邻像素点再做一次平均值计算,该像素的最终颜色值取为最后的平均值。
实施例2
与实施例1基于相同的发明构思,本实施例提供基于CPU的静态场景光线追踪棋盘渲染系统,其包括:
三维场景构建模块,用于实现实施例1的步骤S1,根据点光源与几何物体的坐标构建三维场景,初始化摄像机位置;
缓冲区设置模块,用于实现实施例1的步骤S2,设置一个历史像素值缓冲区和一个历史碰撞点坐标缓冲区;
边界包围盒计算模块,用于实现实施例1的步骤S3,计算三维场景中每个几何物体的边界包围盒;
奇偶棋盘采样模块,用于实现实施例1的步骤S4,使用编程方式实现奇偶棋盘采样,获得采样像素点;
追踪渲染模块,用于实现实施例1的步骤S5和步骤S6,如果摄像机静止,则在渲染阶段,利用棋盘式光线追踪算法得到半分辨率的渲染帧,再结合历史像素值缓冲区的像素值,叠加得到全分辨率的目标图像;如果摄像机通过用户的交互而运动,则通过交互修正算法来得到全分辨率的目标图像。
其中,历史像素值缓冲区用于存储像素颜色值,其大小为屏幕像素数量的二分之一,初始值设为场景背景色;历史碰撞点坐标缓冲区用于存储棋盘式光线追踪算法中光线和物体第一个碰撞点的坐标,以及相应的像素点坐标,其大小为屏幕像素数量的二分之一。
每个几何物体的边界包围盒的计算方法为:首先计算出几何物体的重心坐标O,定义几何物体重心位置到摄像机位置的向量为正方向,然后以几何物体的重心O为起点,向正、反、左、右、上、下六个方向投出射线P(t)=O+td,其中d为射线方向,t为时间;设单位时间为2ms,每经过一个单位时间计算射线到达的点K,计算出垂直于射线并经过点K的平面,若平面与几何物体不相交,则保存该平面作为边界;最终得到六个方向上的平面,六个平面边界组成的包围盒即为边界包围盒。
奇偶棋盘采样方法为:将前后交替的两帧分别定义为奇帧和偶帧,对于每一帧设置一个奇偶标志位,奇数帧的奇偶标志位为1,偶数帧的奇偶标志位为0;采样时遍历每一行像素,对于奇数帧,如果是奇数行,只采样该行编号为奇数的像素,如果是偶数行,只采样该行编号为偶数的像素;对于偶数帧,如果是奇数行,只采样该行编号为偶数的像素,如果是偶数行,只采样改行编号为奇数的像素。
实施例3
与实施例1基于相同的发明构思,本实施例提供一种存储介质,存储介质上存储有计算机可执行指令,计算机可执行指令由计算机处理器执行时,用于实现实施例1的静态场景光线追踪棋盘渲染方法。存储介质可以是任何各种类型的存储器设备或存储设备。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (10)
1.基于CPU的静态场景光线追踪棋盘渲染方法,其特征在于,包括以下步骤:
步骤S1、根据点光源与几何物体的坐标构建三维场景,初始化摄像机位置;
步骤S2、设置一个历史像素值缓冲区和一个历史碰撞点坐标缓冲区;
步骤S3、计算三维场景中每个几何物体的边界包围盒;
步骤S4、在采样阶段,使用编程方式实现奇偶棋盘采样,获得采样像素点;
步骤S5、如果摄像机静止,则在渲染阶段,利用棋盘式光线追踪算法得到半分辨率的渲染帧,再结合历史像素值缓冲区的像素值,叠加得到全分辨率的目标图像;
步骤S6、如果摄像机通过用户的交互而运动,则通过交互修正算法来得到全分辨率的目标图像。
2.根据权利要求1所述的静态场景光线追踪棋盘渲染方法,其特征在于,每个几何物体的边界包围盒的计算方法为:首先计算出几何物体的重心坐标O,定义几何物体重心位置到摄像机位置的向量为正方向,然后以几何物体的重心O为起点,向正、反、左、右、上、下六个方向投出射线P(t)=O+td,其中d为射线方向,t为时间;每经过一个单位时间计算射线到达的点K,计算出垂直于射线并经过点K的平面,若平面与几何物体不相交,则保存该平面作为边界;最终得到六个方向上的平面,六个平面边界组成的包围盒即为边界包围盒。
3.根据权利要求1所述的静态场景光线追踪棋盘渲染方法,其特征在于,步骤S4中奇偶棋盘采样方法为:将前后交替的两帧分别定义为奇帧和偶帧,对于每一帧设置一个奇偶标志位,奇数帧的奇偶标志位为1,偶数帧的奇偶标志位为0;采样时遍历每一行像素,对于奇数帧,如果是奇数行,只采样该行编号为奇数的像素,如果是偶数行,只采样该行编号为偶数的像素;对于偶数帧,如果是奇数行,只采样该行编号为偶数的像素,如果是偶数行,只采样改行编号为奇数的像素。
4.根据权利要求1所述的静态场景光线追踪棋盘渲染方法,其特征在于,步骤S5包括以下步骤:
步骤S51、对像素空间进行分块,得到多个像素空间块,将每个像素空间块的计算分配给不同CPU线程,每个CPU线程同时执行渲染任务;
步骤S52、光线从摄像机位置出发,经过步骤S4采样方式确定的采样像素点,射向三维场景中,并判断三维场景中边界包围盒与光线的相交情况;
步骤S53、若光线与所有边界包围盒都不相交,则结束该光线的追踪;否则计算第一个边界包围盒内几何物体与光线的相交情况,如果有碰撞点则记录该碰撞点坐标,否则计算第二个边界包围盒内几何物体与光线的相交情况,以此类推,直到找到一个碰撞点并转入步骤S54,若均无碰撞点则结束该光线的追踪且相应像素颜色取为背景色;
步骤S54、若碰撞点与各个点光源之间存在有障碍物,则判断碰撞点在阴影区域,进行阴影计算得到像素值,否则转入步骤S55;
步骤S55、通过碰撞点坐标计算出视线向量以及相应的法向量,并将碰撞点坐标存储到历史碰撞点坐标缓冲区;每个采样像素点对应一条光线;视线向量为以摄像机为起点,朝向碰撞点的单位向量;
步骤S56、通过渲染方程计算每个像素点的颜色值;
步骤S57、将像素点的颜色值存储在历史像素值缓冲区中,并替换缓冲区中原来的颜色值。
5.根据权利要求4所述的静态场景光线追踪棋盘渲染方法,其特征在于,步骤S54中阴影的计算方程为:
Lo=Lb+0.1*Le+0.5*∑(Id+Is)
其中,Lo为最终的像素颜色,Lb为纯黑色值,Le为物体本身的颜色值,∑(Id+Is)为其它距离间不含障碍物的点光源所产生的光照贡献值累加项;Id为该点光源下物体的漫反射分量,Id=ld*md*max(dot(N,L),0),ld为该点光源的漫反射系数,md为物体的漫反射系数,N为法线向量,L为光线入射方向向量,dot为点乘运算;Is为该点光源下物体的高光分量,Is=ls*ms*max(dot(H,N)12,s*2),s为物体的光泽度;ls为该点光源的高光系数,ms为物体的高光系数;H为视线向量。
6.根据权利要求4所述的静态场景光线追踪棋盘渲染方法,其特征在于,步骤S56中渲染方程为:
Lo=Le+∑(Id+Is)
其中,Lo为最终的像素颜色,Le为物体本身的颜色值,∑(Id+Is)为不同点光源所产生的光照贡献值的累加项,Id为该点光源下物体的漫反射分量,Id=ld*md*max(dot(N,L),0),ld为该点光源的漫反射系数,md为物体的漫反射系数,N为法线向量,L为光线入射方向向量,dot为点乘运算;Is为该点光源下物体的高光分量,Is=ls*ms*max(dot(H,N)12,s*2),s为物体的光泽度;ls为该点光源的高光系数,ms为物体的高光系数;H为步骤S55计算出来的视线向量。
7.根据权利要求1所述的静态场景光线追踪棋盘渲染方法,其特征在于,步骤S6包括以下步骤:
步骤S61、由步骤S5中的棋盘式光线追踪算法得到全分辨率图像;
步骤S62、遍历每一个像素点,从历史碰撞点坐标缓冲区中取出像素点对应的历史碰撞点坐标,采用相似三角形方法将历史碰撞点的三维坐标变换为当前帧中的UV坐标;
步骤S63、在摄像机坐标系下,将摄像机、历史碰撞点和像素空间平面连接形成相似三角形,然后利用摄影机到像素平面的距离求该碰撞点在像素屏幕中的x坐标和y坐标;根据x坐标、y坐标以及历史像素值缓冲区得到当前像素的颜色值;
步骤S64、处理完每一个像素点,得到新的全分辨率图像;
步骤S65、对于步骤S64得到的全分辨率图像,使用八邻居插值去噪方法处理得到目标图像。
8.根据权利要求7所述的静态场景光线追踪棋盘渲染方法,其特征在于,步骤S65中采用八邻居插值去噪方法处理的过程为:遍历每一个像素,若该像素为背景色,且四个基本相邻方向的像素颜色均不为背景色,则计算该像素周围八个像素颜色值的平均值,然后这八个像素值与平均值做色差计算,取色差最小的四个相邻像素点再做一次平均值计算,该像素的最终颜色值取为最后的平均值。
9.基于CPU的静态场景光线追踪棋盘渲染系统,其特征在于,包括:
三维场景构建模块,根据点光源与几何物体的坐标构建三维场景,初始化摄像机位置;
缓冲区设置模块,设置一个历史像素值缓冲区和一个历史碰撞点坐标缓冲区;
边界包围盒计算模块,计算三维场景中每个几何物体的边界包围盒;
奇偶棋盘采样模块,使用编程方式实现奇偶棋盘采样,获得采样像素点;
追踪渲染模块,如果摄像机静止,则在渲染阶段,利用棋盘式光线追踪算法得到半分辨率的渲染帧,再结合历史像素值缓冲区的像素值,叠加得到全分辨率的目标图像;如果摄像机通过用户的交互而运动,则通过交互修正算法来得到全分辨率的目标图像。
10.存储介质,其上存储有计算机可执行指令,其特征在于,所述计算机可执行指令由计算机处理器执行时,用于实现权利要求1-8任一项所述的静态场景光线追踪棋盘渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111395935.0A CN114049421A (zh) | 2021-11-23 | 2021-11-23 | 基于cpu的静态场景光线追踪棋盘渲染方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111395935.0A CN114049421A (zh) | 2021-11-23 | 2021-11-23 | 基于cpu的静态场景光线追踪棋盘渲染方法、系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114049421A true CN114049421A (zh) | 2022-02-15 |
Family
ID=80211271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111395935.0A Pending CN114049421A (zh) | 2021-11-23 | 2021-11-23 | 基于cpu的静态场景光线追踪棋盘渲染方法、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114049421A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116051713A (zh) * | 2022-08-04 | 2023-05-02 | 荣耀终端有限公司 | 渲染方法、电子设备和计算机可读存储介质 |
CN116704101A (zh) * | 2022-09-09 | 2023-09-05 | 荣耀终端有限公司 | 一种基于光线追踪渲染的像素填充方法和终端 |
CN116761018A (zh) * | 2023-08-18 | 2023-09-15 | 湖南马栏山视频先进技术研究院有限公司 | 一种基于云平台的实时渲染系统 |
CN117315109A (zh) * | 2023-09-28 | 2023-12-29 | 浙江大学 | 一种基于神经网络的自适应渲染帧时空外插方法和装置 |
CN117333364A (zh) * | 2023-09-27 | 2024-01-02 | 浙江大学 | 一种参与介质实时渲染的时域升采样方法和装置 |
-
2021
- 2021-11-23 CN CN202111395935.0A patent/CN114049421A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116051713A (zh) * | 2022-08-04 | 2023-05-02 | 荣耀终端有限公司 | 渲染方法、电子设备和计算机可读存储介质 |
CN116051713B (zh) * | 2022-08-04 | 2023-10-31 | 荣耀终端有限公司 | 渲染方法、电子设备和计算机可读存储介质 |
CN116704101A (zh) * | 2022-09-09 | 2023-09-05 | 荣耀终端有限公司 | 一种基于光线追踪渲染的像素填充方法和终端 |
CN116704101B (zh) * | 2022-09-09 | 2024-04-09 | 荣耀终端有限公司 | 一种基于光线追踪渲染的像素填充方法和终端 |
CN116761018A (zh) * | 2023-08-18 | 2023-09-15 | 湖南马栏山视频先进技术研究院有限公司 | 一种基于云平台的实时渲染系统 |
CN116761018B (zh) * | 2023-08-18 | 2023-10-17 | 湖南马栏山视频先进技术研究院有限公司 | 一种基于云平台的实时渲染系统 |
CN117333364A (zh) * | 2023-09-27 | 2024-01-02 | 浙江大学 | 一种参与介质实时渲染的时域升采样方法和装置 |
CN117315109A (zh) * | 2023-09-28 | 2023-12-29 | 浙江大学 | 一种基于神经网络的自适应渲染帧时空外插方法和装置 |
CN117315109B (zh) * | 2023-09-28 | 2024-06-25 | 浙江大学 | 一种基于神经网络的自适应渲染帧时空外插方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114049421A (zh) | 基于cpu的静态场景光线追踪棋盘渲染方法、系统及存储介质 | |
US10915981B2 (en) | Method for efficient re-rendering objects to vary viewports and under varying rendering and rasterization parameters | |
US9129443B2 (en) | Cache-efficient processor and method of rendering indirect illumination using interleaving and sub-image blur | |
CN107274476B (zh) | 一种阴影图的生成方法及装置 | |
US6222551B1 (en) | Methods and apparatus for providing 3D viewpoint selection in a server/client arrangement | |
US5841439A (en) | Updating graphical objects based on object validity periods | |
JP2017091523A (ja) | 3dレンダリング方法及び3dレンダリング装置 | |
KR20220047284A (ko) | 포비티드 렌더링을 위한 시스템들 및 방법들 | |
US9626762B2 (en) | Stochastic rasterization using enhanced stencil operations on a graphics processing unit (GPU) | |
Stone et al. | Immersive molecular visualization with omnidirectional stereoscopic ray tracing and remote rendering | |
US11244494B1 (en) | Multi-channel ray casting with distortion meshes to address chromatic aberration | |
US20220408070A1 (en) | Techniques for generating light field data by combining multiple synthesized viewpoints | |
WO2013101167A1 (en) | Five-dimensional rasterization with conservative bounds | |
US10825231B2 (en) | Methods of and apparatus for rendering frames for display using ray tracing | |
KR20210087043A (ko) | 병행 텍스처 샘플링 | |
US5719598A (en) | Graphics processor for parallel processing a plurality of fields of view for multiple video displays | |
US20230206567A1 (en) | Geometry-aware augmented reality effects with real-time depth map | |
KR20170053557A (ko) | 3d 렌더링 방법 및 장치 | |
KR102537317B1 (ko) | 렌더링 성능을 올리기 위한 멀티레벨 선택적 렌더링 방법 및 장치 | |
US20220108420A1 (en) | Method and system of efficient image rendering for near-eye light field displays | |
US20220036631A1 (en) | Method for performing shader occupancy for small primitives | |
JPH10232953A (ja) | 立体視画像生成装置 | |
JP3587105B2 (ja) | 図形データ処理装置 | |
JP7118315B1 (ja) | 描画装置 | |
RU2792721C2 (ru) | Способ асинхронной репроекции изображения 3d-сцены |
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 |