渲染
Dawn_cxzz
这个作者很懒,什么都没留下…
展开
-
泛泛而谈的渲染学习记录(二)—— 高斯模糊卷积的线性分解理解
众所周知,高斯模糊是利用卷积模板对图像进行遍历操作,假设图像大小为M * N,高斯模糊的卷积模板大小为m * n,那么时间复杂度为O(M * N * m * n)。接下来对此方法进行线性分解,并附图加以理解,首先对垂直(水平)方向进行卷积操作,然后对水平(垂直)方向进行卷积操作,那么时间复杂度为O(M * N * (m + n))以下是拆分的一个例子可见拆分之后,m * n矩阵变成了m * 1和1 * n,然后我们分两次进行卷积操作,第一次用m * 1遍历M * N的图像矩阵,第二次用1 * n遍历M原创 2022-01-18 13:04:22 · 2657 阅读 · 0 评论 -
泛泛而谈的渲染学习记录(一)—— 描边中的轮廓边缘
最近在看退化四边形的描边算法,其中提到了轮廓边缘的计算方式是(N1·V) * (N2·V)假设Y = (N1·V) * (N2·V),如果Y>=0,那么就不是轮廓边,如果Y<0,那么就是轮廓边。这里引用下灵刃的图,外加自己的图来理解。这是各种边缘的详细解释,我们只讨论轮廓边缘然后是发挥想象环节取N1和N2所在平面构成一个平面坐标系,然后将V投影在该平面上。这里V的方向为坐标轴Y的正方向,蓝色和紫色为平面。(这里这么做是因为,看不看到两个面和这个平面坐标系的Z轴,即第三个坐标轴是无关的原创 2022-01-06 14:58:24 · 627 阅读 · 0 评论 -
blender学习记录 —— 广为人知的甜甜圈教程
blender新手的第一个动画(学习记录)4小时的视频花了5天去学,懒狗是这样的,体会到了动画渲染时的痛苦原创 2021-07-19 22:04:16 · 464 阅读 · 0 评论 -
泛泛而谈的菜鸟学习记录(六)—— 贴花
Unity贴花的实现大致原理是在相机空间下,将贴花所在的物体顶点投射到远裁平面,然后根据深度图来获取深度,然后两者相乘,重新映射到要贴的物体表面上,当然队列要比要贴的物体大。以下是代码解析//v2f vert (appdata_base v){ v2f o; o.pos = UnityObjectToClipPos (v.vertex); o.screenUV = ComputeScreenPos (o.pos); //获取顶点的相机空间位置,同时相机空间为右手坐标系,z取反 o.ray原创 2021-10-20 09:45:37 · 1762 阅读 · 0 评论 -
泛泛而谈的菜鸟学习记录(三)—— unity后处理
关于unity后处理那点事1、后处理本质上是绘制一个与屏幕同宽高的面片。2、使用onRenderImage接口来进行前后渲染纹理的处理,该函数处在LateUpdate(常用于相机变换操作)之后,以及辅助线和UI绘制之前,该函数会在所有的透明和不透明的pass执行完后被调用。3、通过Graphics.Blit函数来选择传入给定的材质,根据材质的shader来对src纹理进行后处理的各种操作,操作完之后存放在dest纹理中,unity会用封装好的函数把dest绘制在屏幕中。4、后处理shader的pas原创 2021-07-26 18:08:01 · 596 阅读 · 0 评论 -
泛泛而谈的菜鸟学习记录(一)—— GPU渲染流程
GPU渲染流程大概整理主要是unity方面的1、mesh render把CPU处理好的顶点信息传给GPU处理。2、shader中自带的顶点着色器可以对这些顶点的法线、纹理坐标和位置等信息进行处理和转化,一般情况下,没有几何或者曲的话都是要把顶点的texcoord转换到裁剪空间的。3、曲面细分着色器对三角面进行细分,包括细分因子和细分段数等信息。曲面细分中主要由两个函数构成,一个是hull shader;另一个是domain shader,hull shader是根据hull shader const原创 2021-07-19 23:08:04 · 1206 阅读 · 0 评论