![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图形学
文章平均质量分 74
Freak587
这个作者很懒,什么都没留下…
展开
-
高度频谱的实现
按照公式计算,首先将第一个复数的实部a乘以第二个复数的实部c,得到ac;将第一个复数的虚部b乘以第二个复数的虚部d,得到bd;接下来,将第一个复数的实部a乘以第二个复数的虚部d,得到ad;将第一个复数的虚部b乘以第二个复数的实部c,得到bc;然后将这两个结果相加,得到ad + bc。最后,将这两个结果合并,得到最终的复数值。其中,a、b、c和d都是实数,i是虚数单位。复数可以表示为a + bi的形式,其中a是实部,b是虚部。因此,(3 + 2i) × (1 + 4i) = -5 + 14i。原创 2023-03-15 11:38:27 · 185 阅读 · 0 评论 -
unity Build-in 光源和光照模型
前向渲染:每个物体都有可能被重复渲染,即基于物体的光源渲染;超出灯光设置数量被当作顶点光(6*6)延迟渲染:基于光源的物体渲染;以灯光为单位,先计算灯光所需东西,如RT0为漫反射,RT1为金属度,RT2为法线图;对于多光源友好(6+6);区别:延迟渲染需要MRT技术(multi render target)和空间容量大。原创 2023-02-06 14:40:28 · 1036 阅读 · 0 评论 -
Matcap与菲涅尔
菲尼尔效果(简化版公式):fresnel = base + scale*((1-v*n)^power)透明队列为后前渲染,不关闭深度写入则会覆盖之前的像素,导致混合不了。y的值为0~1,根据x3返回对应y值。两色混合做个demo看看!混合为什么要关闭深度写入?原创 2023-01-12 17:44:19 · 136 阅读 · 0 评论 -
Unity渲染管线
不透明队列2500:顺序后前,得到真正的混合效果。前言:基于unity渲染管线,其他图形api可能有所差异。4.片元:顶点插值而成。3.图元:顶点心连心。原创 2023-01-11 16:36:28 · 97 阅读 · 0 评论 -
FFT海浪模拟
根据推导可知,我们需要蝶形运算,并且采样点(或者说波数)是2的整数次幂。同时需要注意的是,蝶形运算会顺序输入、倒序输出,倒序输入、顺序输出。可见,要想得到高度频谱,我们不仅需要高斯随机数,还需要phillips频谱(方向波谱),其中公式中的k箭头是波长向量,k是波长向量的模。最后,我们就可以根据高度频谱生成对应的x\z位移频谱。下图是高斯随机数与phillips频谱生成高度频谱的流程。如下是根据高度频谱实现FFT海浪模拟的全部过程。主要流程如下可见,首要的事情是生成高度频谱。............原创 2022-07-28 10:21:55 · 1081 阅读 · 0 评论 -
D3D计算着色器入门
计算着色器跟他的名字一样,就是进行计算的着色器。但是它的用途不仅局限于图形的运算,也可以进行通用的运算。计算着色器的计算能力非常强,这就使得在gpu进行通用运算后再传输回cpu,比直接在cpu中运算花费的时间更短。计算着色器不属于渲染管线,但可以对任意阶段进行读取操作。...原创 2022-07-24 15:46:33 · 630 阅读 · 0 评论 -
关于对齐次裁剪空间及HLSL语义的理解
之前对HLSL语义及使用仅了解一点点,后面再学习的时候,发现忘得差不多,想不起来大概,所以又重新屡了一遍思路。原创 2022-07-19 10:37:41 · 915 阅读 · 0 评论 -
背面剔除|无剔除模式与透明物体的绘制
对于正交投影,眼睛位置的向量被替换为负视图方向,这对于场景是恒定的,计算这个向量和三角形的法向量的点积,点积为负意味着两个向量之间的夹角大于π/2弧度,所以三角形不是面向观察者的,这个测试等价于计算从观察者的位置到三角形平面的标记距离,如果符号是正的,三角形是正面的。Shirman和Abi-Ezzi证明,如果观察者面向锥体,那么锥体中的所有面都是面向前的,面向后的锥体也是如此,Engel使用了一个类似的概念,称为GPU剔除的排除体积。左边的两个三角形是正面的,右边的三角形是背面的,可以剔除。...转载 2022-07-18 16:57:34 · 479 阅读 · 0 评论