- 博客(26)
- 资源 (1)
- 收藏
- 关注
原创 XEngine 杂项(对象系统/UI/Math/Application)
XEngine 杂项(对象系统/UI/Math/Application)
2022-07-06 23:03:25
236
原创 【实时渲染】SVGF Spatiotemporal Variance-Guided Filtering
流程主要就是上面三步,理清这三步怎么做的就可以写代码了。Pass1 Reprojection输入:Color,Emission,Albedo输出 illumination,moments,historylength(1)当前帧的illumination:illuminationCurrent=gColor−gEmissionmax(gAlbedo,eps)illuminationCurrent=\frac{gColor-gEmission}{max(gAlbedo,eps)}illuminati.
2021-06-13 22:28:02
1398
原创 【实时渲染】UE新版大气渲染(论文及分析)
UE4新版的大气实现完全碾压基于预计算大气散射方法,它是在论文A Scalable and Production Ready Sky and Atmosphere Rendering Technique的基础上实现的。从篇幅就可以看出来这篇论文的主要看点在Multi Scatter部分,几乎是剩下三个LUT篇幅和的两倍。Multiple scattering LUT其实这个新的方法只是比之前的预计算大气散射多想了一步近似。为了保持符号相同,后文都用预计算大气散射论文的公式进行分析:L=L0+(R+
2021-06-02 21:48:29
1303
原创 【DXR/RayTracingGems】屏幕空间光子映射Screen-Space PM(SSPM)
来自RayTracingGems第7部分GI篇,使用屏幕空间光子映射绘制焦散效果。采用DXR API,在Falcor框架上写的。如果光子穿过两种不同的介质,比如从空气到玻璃或者从空气到水,光子会发生折射,并且其传播方向会发生改变。折射的光子要么发散,要么聚焦,这些聚焦的光子就形成了焦散。反射也可以产生聚焦,只要这么表面的形状可以将光子给聚焦起来。这个文章中的焦散和其他全局效果是分开的。需要一个G-Buffer中的depth和roughness buffer来用于后续操作,比如折射停止情况。发射的光子
2021-05-29 22:16:06
483
原创 【实时渲染】皮肤渲染 理论及UE实现(SeparableSSS和Burley Normalize SSS)
UE中皮肤渲染采用的是Separable Subsurface Scattering和Burley Normalize SSS,本节我们先从理论上了解一下BSSRDF,接着分析以下Separable Subsurface Scattering和Burley Normalize SSS算法,并对UE中的实现进行分析。渲染方程BRDF先从最熟悉的BRDF开始,假设表面上有一个点ppp,来自wiw_iwi方向的radiance是LiL_iLi,那么dL=dΦdATdw=dEcosθdAdL=\frac
2021-05-29 22:14:51
379
1
原创 【DXR/UE4】DXR教程/UE4RTAO
DXR教程一这个是Nvidia做的DXR的教程之一,总共14篇,主要是介绍DXR Api的使用,这套API还是非常繁琐的,如果一直关注细节的话很容易理不清思路。事实上只需要关注TraceRay这个函数就可以很好的了解DXR的整体。这个流程中新的两个部分:加速结构(BLAS和TLAS)和ShaderTable都可以说是为TraceRay服务的,它们用于说明当ray与AccelerationStructure中的物体相交后执行哪部分程序。Template<payload_t>void Tra
2021-05-17 19:44:12
1336
2
原创 【UE4】指数密度高度雾
https://blog.csdn.net/netyeaxi/article/details/87437880控制台设置
2021-05-03 15:21:38
1961
原创 【实时渲染】RTR4 简要问答版
第二章 图形渲染管线(1)渲染管线可分为哪4个阶段?第一个是应用程序阶段,第二个是几何处理阶段,第三个是光栅化阶段,第四个是着色阶段(Pixel Processing)。(2)渲染管线分为几个阶段,每个阶段主要是做什么?渲染管线主要分为四个阶段,分别是应用程序阶段、几何处理阶段、光栅化阶段、着色阶段。在应用程序阶段,主要进行碰撞检测,动画,物理模拟。在几何处理阶段,主要决定哪些物体以哪些方式在哪里被绘制。在光栅化阶段,主要判断哪些像素在三个顶点形成的三角形内。在着色阶段,主要是对每个像素进行着色,并
2021-02-09 18:22:08
1179
原创 【离线渲染】【参与性介质渲染】Volume Rendering(一)
EstimateDirect()HomogeneousMedium::Sample() Tr()Grid.cppVolPathIntegrator::Li()PaperBssdf采样 15.4章我们讨论光线传播方程的时候一般不会考虑上参与性介质,而是假定光子在真空中传播。但是现实世界中充满了各种介质,如空气、水、云等,这些介质在光线传播过程中会参与光线的交互,因此也称参与性介质。光子与粒子发生交互时,它要么被粒子吸收,要么光子被散射到另一个方向。两种时间发生的相对概率分别表示为absorpti
2020-08-08 19:55:40
1946
原创 【数字几何处理】 Laplacian Smooth 源码+介绍
Energy-based formulationu∗=argminuE(u)=agrminu12∫S(f−u)2+λ∣∣∣▽∣∣2dAu^{*}=argmin_{u}E(u)=agrmin_{u}\frac{1}{2}\int_{S}(f-u)^{2}+\lambda|||\triangledown||^{2}dAu∗=argminuE(u)=agrminu21∫S(f−u)2+λ∣∣∣▽∣∣2dAf:noisy signalf:noisy\space signalf:noisy&nb
2020-07-17 23:14:59
775
1
原创 【数字几何处理】参数化:Tutte‘s embedding&Least Squares Conformal Mappings 源码+介绍
Tutte’s embedding原理:如果边界顶点有序的落在一个凸多边形上,且内部的顶点是其邻居的线性组合,那么(u,v)坐标参数化是双射的。[1000⋯0100⋯⋯⋯⋯⋯⋯wi,0wi,1−Σwi,jwi,4⋯⋯⋯⋯⋯⋯][u0v0u1v1u2v2u3v3u4v4]=[u0Boundv0Boundu1Boundv1Bound000000]\begin{bmatrix} 1&0&0&0&\cdots \\0&1&0&0&\cdots\\
2020-07-17 23:14:51
3364
2
原创 【数字几何处理】Deformation:Laplacian-based energy&&As-rigid-as-possible 源码+介绍
Laplacian-based energy原理:minx∫S∣∣Δx−Δx^∣∣2dAmin_{x}\int_{S}||\Delta x-\Delta \hat{x}||^{2}dAminx∫S∣∣Δx−Δx^∣∣2dAd=x−x^d=x-\hat{x}d=x−x^=>mind∫S∣∣Δd∣∣2dAmin_{d}\int_{S}||\Delta d||^{2}dAmind∫S∣∣Δd∣∣2dA=>minD DTLTM−TMM−1LDmin_{D}\space D^{
2020-07-17 23:14:44
821
5
原创 【离线渲染】自适应光子映射(二):自适应马尔科夫链和并行退火
本文源自PBRT的一个课后习题1.1概述在只有一小部分被照亮的表面可以在渲染图像中看到的场景中,SPPM变得比较低效。这种问题对各种光子映射算法都是存在的,自适应光子映射算法则可以较好的解决这种问题。其核心思想是定义一个光子路径的visibility function并根据这个可视函数进行重要性采样。[上图]自适应光子映射的采样空间。我们在这个随机数空间内定义了一个函数,如果......
2020-04-01 22:19:17
612
原创 【几何处理】基于二次误差测量的网格简化(二)
接上文,Hope的边收缩操作可推广为一般的顶点合并变换来描述,其含义意是将两个顶点移到一组新的位置v,将连向的所有边都连向v,并删除所有退化的边和面片。基本的思想就是不断地收缩边,直到达到我们所需要的三角形数量,我们收缩的边越多,网格越简单。那么,我们应该收缩哪些边,当我们收缩边时,我们应该在哪里放置新顶点?Garland和Heckbert提出了一种简单的贪心方案,该方案在实践中效...
2020-02-22 22:03:00
2237
1
原创 【几何处理】基于二次误差度量的网格简化(一)
网格简化是几何处理中比较基础的一部分内容,现在我们介绍其中一种简单的简化方法:基于二次误差测量的网格简化,在介绍该算法之前我们先来简要地介绍一下网格简化的各种技术目录采样(Sampling)自适应细分(Adaptive subdivision)去除(decimation)顶点合并(vertex merging)基于长方体滤波的多面体简化顶点删除技术基于相邻面片和边界......
2020-02-22 20:33:05
2615
1
原创 【离线渲染】自适应光子映射(一):光子映射算法和梅特波利斯算法简述
本文来自PBRT的一个课后习题,自适应光子映射算法主要适用于摄像机只观察场景中的一小部分的情况,该算法结合了光子映射算法和梅特波利斯算法,所以在这一节我们会对这两种算法进行一个简单的介绍。目录1.1路径追踪1.2光子映射1.3渐进式光子映射1.4随机渐进式光子映射1.5光子映射方法总结2.1蒙特卡罗2.2Metropolis Light Transport2.3...
2020-02-11 19:48:08
1988
原创 柏林噪声(Perlin Noise)
估计你能找到我这篇没人看的文章也是被网上的相关博客给弄得头大,其实柏林噪声并不是很难,但是由于perlin的疏忽和网上一些错误博客,导致perlin noise变得很混乱,恩,本菜鸡的这篇很有可能也是错的,建议还是问下周围的dl更好,这里推荐乐乐女神的那篇关于柏林噪声的文章,可以让你有个大体的了解,而不会被各种噪声搞晕。要了解实现方法的话去看《GPU gems 1》第五章和《GPU gems 2》...
2019-07-24 08:57:14
30230
6
原创 【实时渲染】屏幕空间特效和多边形技术
前言:主要涵盖了《real time rendring 4》第12章image space affect和第13章beyond polygons的前六节内容。目录屏幕空间特效(Image-Space Effects)图像处理景深运动模糊bloom降采样Bilateral Filtering多边形技术(beyond polygons)公告板技术(Billb...
2019-07-21 21:36:18
1023
数值计算实验.zip
2020-08-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人