Asuka's Blog
  • Home
  • Categories
  • Archives
  • Tags
  • Github
  • About
[Global illumination for Sponza][1] 搭建环境

[Global illumination for Sponza][1] 搭建环境

Start为了学习图形学相关的算法,打算用经典的Sponza场景自己实现GI,GI算法不只一种,而且经常是几种结合使用,所以我计划写个系列博客,记录一下学习过程中遇到的困难,非教学向。 Nvidia Falcor开始的时候其实是打算用Vulkan从最底层写起的,框架都写好了。 不过从之前的经验来看,从最底层写起其实是很花时间的,要手动处理资源绑定、ImageLayout转换、barrier等等细节
2023-09-17
Global Illumination
#CG #GI
球谐函数的计算与证明

球谐函数的计算与证明

曲线空间坐标其实想获得球坐标下拉普拉斯方程,完全可以不用曲线坐标,直接把球坐标的参数方程代入到拉普拉斯方程中一步步求微分,也能算出来,但是这样计算量会非常大,稍微马虎就会出错,而如果拿到曲线坐标下计算,过程要简单的多 球坐标下拉普拉斯方程曲线坐标下的坐标值,不一定表示长度,也可以是角度等,比如下面要计算的$\theta ,\varphi $就是角度量,为了转换成直角
2023-08-23
Mathematics for Computer Graphics
#Math #Games202
Path Tracing 中 Russian Roulette 的期望

Path Tracing 中 Russian Roulette 的期望

简介Path Tracing 的递归算法中要解决一个问题,就是光线不能无限反射,需要有一个停止的条件,一种方法就是使用俄罗斯轮盘赌,Russian Roulette (RR),只有通过RR时才继续算反射,否则停止递归,这样即能避免无限递归,又能保证能量守恒。 误区和群友Irimsky `讨论发现之前自己的计算是不对的,之前我认为期望就简单这么算:$$E\left( p \right) &#
2023-08-04
Mathematics for Computer Graphics
#Math #Games101
齐次坐标与变换的几何解释

齐次坐标与变换的几何解释

代数理解对于为何引入齐次坐标,一般的分析文章都会从代数的角度出发,给出如下公式:$$\left[ \begin{array}{c} x\\ y\\ z\\ 1\\\end{array} \right] \left[ \begin{array}{ccc:c} a_{11}& a_{13}& a_{13}& t_x\\ a_{21}&a
2023-07-25
Mathematics for Computer Graphics
#Math
投影矩阵的推导过程

投影矩阵的推导过程

目标如下图所示,把View Space的坐标映射到Clip Space: 这里先做一些前置说明:设View Space (也可以叫做Eye Space)里的点坐标为 $\left( x_e, y_e, z_e, 1 \right) $设Clip Space 里的点坐标为 $\left( x_c, y_c, z_c
2023-07-25
Mathematics for Computer Graphics
#Math
对法线变换矩阵的理解

对法线变换矩阵的理解

tangent向量($T$)表示和surface平行的向量,在三角形中可以用两个vertex的差计算,所以T的变换矩阵和vertex的一样,但法线($N$)不同,由于有切变的存在,如果还用相同的矩阵左乘,变换之后的法线将不再和原来的surface垂直: 为了确保变换之后的法线依然垂直于surface, 可以从如下条件出发进行推导:$$N\cdot T=N^{\prime}\
2023-07-24
Mathematics for Computer Graphics
#Math

Search

Hexo Fluid
Views: Visitors: