基于点缓存全局光照技术的研究
本文选题:全局光照 + 基于点缓存的全局光照 ; 参考:《山东大学》2014年博士论文
【摘要】:随着动漫产业的发展,人们对真实感渲染的要求越来要高,全局光照做为真实感渲染中的重要组成部分,一直被广泛关注。全局光照既需要计算从光源直接得到的光照,还需要计算经过场景中物体反弹之后的光照,该问题描述为渲染方程的求解。目前常用的计算全局光照的算法包括了蒙特卡洛光线跟踪算法、光子映射、多光源算法以及基于点的全局光照算法等。本文对基于点的全局光照算法(Point based global illumination简称为PBGI)展开研究。 PBGI算法主要用于模拟环境光遮挡、色溢、面积光以及光泽反射等效果,虽然不能保证结果的正确性,但是渲染效果是无噪声,并且与光线跟踪相比,具有更高效率。该算法分为两个阶段:第一阶段,对场景进行采样并且计算每个采样点的直接光照,形成点云,将点云组织到空间层次结构(比如Bounding Sphere Hierarchy简称为BSH)中,该点云层次结构中的每个节点,表示其子树的平均位置、法向以及光照信息。第二阶段,利用点云层次结构计算着色点的间接光照,表里点云层次结构,找到对当前着色点可能产生贡献的节点,根据节点距离着色点距离的不同采用不同的策略,距离较远的节点,无需遍历到其中的每一个点,将这些节点投影到为该着色点构建的微缓冲区(包含节点深度和颜色信息的半球缓冲区或者立方体缓冲区),计算这些节点的可见性,最后将微缓冲区中的颜色值,与其对应的双向反射分布函数(Bidirectional Reflection Distribution Function,简称为BRDF)以及立体角等卷积后得到该着色点的间接光照值。PBGI的高效性以及无噪声是它的主要优势,但是PBGI算法也存在一些问题,比如无法计算非漫反射光线传递,即不能模拟焦散和光泽反射表面之间的反射等效果,而这些效果在全局光照中至关重要,因此该问题限制了PBGI算法的应用范围。在本文中,我们针对PBGI中存在的问题展开研究,一方面提高其效率,另一方面扩展该算法使其支持更多光线传递路径,另外,我们对PBGI算法应用到预览渲染中进行了初步探索。 本文提出了基于分解的点缓存全局光照算法,考虑到着色点之间的空间连贯性,通过重用树切以及微缓冲区来提高效率。在PGBI算法中,计算每个着色点间接光照的过程是独立的,但是我们发现位置和法向相近的着色点具有相似的树切,即这些着色点的遍历过程存在冗余。我们首先提出着色点关于位置和法向的相似性模型,并且基于k-means聚类算法将着色点进行聚类,在每个聚类中找到聚类树切,并且将聚类树切中的节点分为远节点和近节点:远节点被聚类中的着色点所共用并且不再进行遍历,而近节点分别被每个着色点进一步遍历。此外,我们使用聚类微缓冲区计算远节点的可见性,着色点微缓冲区计算近节点以及更新节点的可见性,通过将这两种微缓冲区融合得到入射辐射亮度,与BRDF卷积后得到间接光照值。该算法对树切进行重用,从而使得PBGI的效率提高数倍,并且产生的误差较少,此外,保持了原算法的时间连贯性。 我们提出了基于小波的PGBI算法计算非漫反射表面之间的光线传递。在PBGI算法中,使用RGB存储点的直接光照,使用球谐函数(Spherical Harmonics,简称为SH)系数来存储点云层次结构中的直接光照,由于只存储了漫反射点的直接光照,因此无法模拟焦散等效果。如果采用SH来存储非漫反射点的光线传递,低频BRDF能够使用较少的系数来表示,而高频BRDF则需要大量的SH系数,由于SH不支持非线性近似,将造成严重的内存问题,而哈尔小波支持非线性近似,具有稀疏性,在内存使用方面具有优势;此外,在表示高频函数时,SH存在"ringing走样。基于以上原因,本文中使用哈尔小波来存储直接光照,即小波系数缓存点的出射辐射亮度,在立方体贴图上采样后,在每个面上进行二维小波变换来得到小波系数,并且将小波系数在点云层次结构中进行层次化编码,即将小波系数再次进行小波分析,在点云层次结构的每个节点中计算节点近似系数和节点细节系数,对于高层的节点(远离根节点的节点层数越大)只存储节点细节系数,低层的节点只存储节点近似系数,从而减少内存占用。此外,在计算点云层次结构的节点小波系数时,采用后序遍历的策略来减少内存使用。PBGI在高频光照或者高频BRDF情况下会出现走样问题,这是由于对光照或者BRDF采样不足造成的,该问题可以通过提高微缓冲区的分辨率来解决,但是这将严重影响到渲染效率,使得PBGI失去原有速度上的优势,因此我们提出了重要性驱动缓冲区技术,只在“重要”方向增加微缓冲区的分辨率。根据BRDF和入射光照重要性构造重要性函数,细分重要性高的微缓冲区像素,通过实验证明,该重要性驱动微缓冲区既解决了走样问题,又保持了算法的高效性。基于小波的PBGI算法,能够计算从漫反射到非常接近于镜面反射的各个频率的材质,并且与双向路径算法相比有更高的效率。 在以上两个算法的基础上,我们提出基于视点树的多次反射计算方法,用于快速计算光线在场景中的多次反射。PBGI算法中,在计算多次反射时,需要计算点云中每个点的间接光照,即每个点都需要遍历点云层次结构以及向微缓冲区投影树切中的节点,得到入射辐射亮度之后,再根据BRDF计算出射辐射亮度。基于空间连贯性,我们提出利用视点树进行遍历的方案,即点云树中的某些节点对于其他某些节点中包含点的贡献是相似的,此时,没有必要对这些点分别遍历来找到该节点。在多次反射中,点云树有两个作用:发射和接收,为了表达的清晰,分别称为点云树和视点树,基于视点树遍历的目标是尽可能找到反射节点和接收节点对,使得反射节点对接收节点中所有点的贡献是相似的,通过计算两个立体角来达到该目标。最终,重用的树切分布在该视点树中,这是对基于分解的PBGI算法的扩展,从聚类内着色点的树切重用扩展到层次化地重用。此外,在多次反射中的另外一个问题是如何由入射辐射亮度快速得到出射辐射亮度。假设出射方向和入射方向都在n×n的半球(投影为正方形)上采样,即需要计算n2次BRDF与入射辐射亮度的卷积,该问题的时间复杂性O(n4)。根据小波稀疏性的特点,我们分别将入射辐射亮度和BRDF进行小波变换,然后在频率空间相乘,从而提高效率。本文提出了BRDF四维小波系数和入射光照二维小波系数相乘快速计算出射辐射亮度的模型。最后,我们利用缓存了多次反射光照的点云层次结构,充分使用图形处理单元并行计算的优势,实现场景的预览渲染,首先将点云层次结构中包含节点近似系数的某一层节点作为采样点,将这些采样点向屏幕空间进行投影,得到采样点对每个像素所包含着色点的辐射亮度以及权重,并且将它们累加到两个缓冲区中,再根据这两个缓冲区计算出着色点的辐射亮度。场景中可以包含漫反射材质以及各种频率的光泽反射材质,并且支持视点的变化。 本文对PBGI算法进行改进和扩展,一方面使其具有更高效率,另一方面,使其支持非漫反射光线传递,从而可以模拟焦散等效果,扩大其应用范围。
[Abstract]:With the development of the animation industry, the demand for realistic rendering is getting higher and higher. Global light is an important part of the realistic rendering. The global illumination needs to calculate the illumination directly obtained from the light source and the illumination after the rebound of the objects in the scene. The problem is described as the rendering square. The commonly used algorithms for computing global illumination include Monte Carlo ray tracing algorithm, photon mapping, multi light source algorithm and point based global illumination algorithm. This paper studies the point based global illumination algorithm (Point based global illumination for short).
The PBGI algorithm is mainly used to simulate the effects of ambient light occlusion, color overflow, area light and luster reflection, although it can not ensure the correctness of the results, but the rendering effect is no noise and is more efficient than the ray tracing. The algorithm is divided into two stages: the first stage, sampling the scene and calculating each sampling point. The point cloud is formed by direct light, and the point cloud is organized to the spatial hierarchy (such as Bounding Sphere Hierarchy for short, BSH). Each node in the point cloud hierarchy represents the average position of its subtree, the normal direction and the illumination information. The second stage is used to calculate the indirect illumination of the coloring point with the point cloud hierarchy, and the interior point cloud hierarchy. To find nodes that may contribute to the current coloring point, using a different strategy depending on the distance from the node distance to the coloring point, the distant nodes, without traversing each of them, projecting these nodes to the micro buffer for the coloring point (hemispherical buffers containing node depth and color information or standing). The visibility of these nodes is calculated. Finally, the color value in the micro buffer, and its corresponding bidirectional reflectance distribution function (Bidirectional Reflection Distribution Function, BRDF), and the stereoscopic angle are convoluted, and the efficiency of the indirect illumination value.PBGI of the coloring point is obtained and the non noise is its main advantage. However, there are some problems in the PBGI algorithm, such as the inability to calculate the non diffuse reflection ray transfer, that is, the effect of the reflection between the caustic and the gloss reflected surfaces is not simulated, and these effects are very important in the global illumination. Therefore, this problem restricts the application of the PBGI algorithm. In this paper, we deal with the problems in the PBGI. On the one hand, we can improve its efficiency, on the other hand, it extends the algorithm to support more ray transmission paths. In addition, we have made a preliminary exploration of the application of PBGI algorithm to preview rendering.
In this paper, a decomposition based global illumination algorithm for point caching is proposed. Considering the spatial coherence between the coloring points, the efficiency is improved by reusing the tree cutting and the micro buffer. In the PGBI algorithm, the process of calculating the indirect illumination of each coloring point is independent, but we find that the position and method have similar tree cutting to the similar coloring points. That is, the traversing process of these coloring points is redundant. Firstly, we propose the similarity model of location and normal direction of coloring points, and cluster the coloring points based on K-means clustering algorithm, find the clustering tree in each cluster, and divide the nodes in the clustering tree into the remote nodes and the near nodes: the coloring of the remote nodes in the clustering. The points are shared and no longer traversed, and the near nodes are further traversed by each coloring point. In addition, we use the clustering micro buffer to calculate the visibility of the remote nodes. The coloring point micro buffer calculates the visibility of the near nodes and updates the nodes. The two kinds of micro flushing areas are fused to the incident radiation brightness and after the convolution with BRDF. Indirect illumination is obtained. The algorithm reuses tree cutting so that the efficiency of PBGI is increased several times, and the error is less. In addition, the time consistency of the original algorithm is maintained.
We propose a wavelet based PGBI algorithm to calculate the light transmission between non diffuse surfaces. In the PBGI algorithm, direct illumination is used to store the direct illumination of the point cloud structure using the direct illumination of the RGB storage point and the spherical harmonic function (Spherical Harmonics, abbreviated for abbreviated as SH). If SH is used to store the light transmission of non diffuse reflection points, low frequency BRDF can be expressed with less coefficients, while high frequency BRDF requires a large number of SH coefficients. Because SH does not support nonlinear approximation, it will cause serious memory problems, while har wavelet is supported by nonlinear approximation and has sparsity and is used in memory. The mask has the advantage; in addition, when the high frequency function is expressed, SH has a "ringing aliasing". Based on the above reasons, this paper uses Hal wavelet to store direct illumination, that is, the outgoing radiation luminance of the wavelet coefficient caching point. After sampling the cube map, the wavelet coefficients are obtained by two-dimensional wavelet transform on each surface, and the wavelet system is used. In the hierarchical structure of the point cloud, the hierarchical coding is carried out, and the wavelet coefficients are analyzed again. The node approximation coefficient and the node detail coefficient are calculated in each node of the point cloud hierarchy. The node details are stored only for the nodes of the high level nodes (the number of nodes far away from the root node), and the nodes in the low layer only store the nodes near the nodes. In addition, in calculating the node wavelet coefficients of the point cloud hierarchy, the post order traversal strategy is used to reduce the memory use of.PBGI in high frequency or high frequency BRDF. This is due to the lack of light or BRDF sampling, which can be improved by improving the micro buffer. The resolution of the zone is solved, but this will seriously affect the rendering efficiency, making the PBGI lose the advantage of its original speed, so we propose the importance driven buffer technology to increase the resolution of the micro buffer only in the "important" direction. According to the importance of the importance of BRDF and the importance of incident illumination, we subdivide the micro buffer with high importance. It is proved by experiments that the importance of the micro buffer solution not only solves the problem of the aliasing, but also keeps the efficiency of the algorithm. The wavelet based PBGI algorithm can calculate the material from diffuse reflection to very close to the mirror reflection, and it is more efficient than the bidirectional path algorithm.
On the basis of the above two algorithms, we propose a multiple reflection calculation method based on view tree, which is used to quickly calculate the multiple reflection.PBGI algorithm in the scene. When calculating multiple reflections, we need to calculate the indirect illumination of each point in the point cloud, that is, each point needs to traverse the point cloud hierarchy and projection to the micro buffer. The nodes in the tree cut the radiation brightness after the incident radiation, and then calculate the radiation luminance according to the BRDF. Based on the spatial coherence, we propose a scheme to traverse the point tree, that is, some nodes in the point cloud are similar to the contribution of the points in some other nodes. At this time, it is not necessary to traverse these points to find the points respectively. In multiple reflection, the point cloud tree has two functions: launch and receive, in order to express clarity, it is called point cloud tree and point tree respectively. The target based on view tree traversing is to find the reflection node and the receiving node as much as possible, so that the contribution of the reflection node to all points in the receiving node is similar, by calculating two stereoscopic points. Finally, the reused tree cut is distributed in the view tree. This is the extension of the decomposition based PBGI algorithm, extending from the tree cutting reuse to the hierarchical reuse of the coloring points in the cluster. In addition, the other problem in the multiple reflection is how to quickly get the radiation luminance from the incident radiance. Suppose the ejector is emitted. Both the direction and the direction of the incident are sampled on the n x N hemisphere (the projection is square), that is to calculate the convolution of the N2 BRDF and the incident radiance. The time complexity of the problem is O (N4). According to the characteristics of the sparsity of the wavelet, we change the incident radiation brightness and BRDF, and then multiplied in the frequency space, thus improving the efficiency. The BRDF four dimension wavelet coefficients and the two-dimensional wavelet coefficients of incident illumination are multiplied to calculate the radiation luminance quickly. Finally, we have cached the point cloud hierarchy of multiple reflection light, and fully use the advantages of the parallel computing of the graphic processing unit to realize the preview rendering of the scene. First, we include the nodes in the point cloud hierarchy. Some nodes of the point approximate coefficient are used as sampling points to projection the sampling points to the screen space, to get the radiance and weight of the color points contained in each pixel by the sampling points, and to add them to two buffers, and then calculate the radiance of the coloring point according to the two buffers. Reflective material and glossy reflective materials of various frequencies, and support the change of viewpoint.
In this paper, the PBGI algorithm is improved and expanded. On the one hand, it makes it more efficient. On the other hand, it supports non diffuse reflection ray transmission, which can simulate the effect of caustics and expand its application range.
【学位授予单位】:山东大学
【学位级别】:博士
【学位授予年份】:2014
【分类号】:O439
【相似文献】
相关期刊论文 前10条
1 谢应涛;;一种随机光线分层表面的光能辐射方法[J];大众科技;2010年04期
2 ;[J];;年期
3 ;[J];;年期
4 ;[J];;年期
5 ;[J];;年期
6 ;[J];;年期
7 ;[J];;年期
8 ;[J];;年期
9 ;[J];;年期
10 ;[J];;年期
相关会议论文 前1条
1 刘鲁男;;三维特技镜头的制作——“真实”的轻松再现[A];2011中国电影电视技术学会影视技术文集[C];2011年
相关博士学位论文 前3条
1 任重;基于预计算的交互式全局光照明研究[D];浙江大学;2007年
2 王贝贝;基于点缓存全局光照技术的研究[D];山东大学;2014年
3 孙鑫;可变材质的交互级全局光照明绘制算法的研究[D];浙江大学;2008年
相关硕士学位论文 前10条
1 张桂连;室内实时全局光照技术研究[D];山东师范大学;2009年
2 楚梦渝;基于GPU的渐进式光子松弛[D];浙江大学;2014年
3 朱元龙;Light Propagation Volume全局光照算法的研究[D];杭州电子科技大学;2014年
4 魏萍;点云全局光照渲染方法的优化与扩展[D];山东大学;2014年
5 杨阳;基于点的全局光照效果的研究[D];杭州电子科技大学;2011年
6 刘明;预计算光能传输光照下逐像素渲染的实现[D];电子科技大学;2007年
7 邹欣昂;动态场景的全局光照实时绘制[D];湖南大学;2007年
8 姜松;包含光泽材质复杂场景全局光照明的高效绘制[D];浙江大学;2012年
9 龚怿;动态场景的全局光照实时绘制[D];浙江大学;2006年
10 袁伟杰;全局光照下的动画渲染技术研究[D];天津大学;2007年
,本文编号:1984782
本文链接:https://www.wllwen.com/wenyilunwen/dongmansheji/1984782.html