- 博客(13)
- 收藏
- 关注
原创 Unity前向渲染中的过滤机制与蒙版解析
2500为分界值(可自定义),此分类直接影响光照计算、阴影处理和后处理阶段的行为。RenderQueueRange.opaque // 仅处理不透明物体。透明物体的光源计算复杂度从O(N)降至O(1),这是过滤机制的核心价值。// 创建独立RenderFeature处理透明水体。:为玻璃物体单独添加折射通道,或为角色添加多层描边。:描边忽略角色模型,仅作用于场景中的粒子/玻璃物体。透明物体阴影需特殊处理(如:修改Shader的。// 正确配置:仅不透明物体参与描边。基于法线贴图扭曲背景。
2025-07-08 21:29:07
1143
原创 前向渲染和延迟渲染
渲染引擎技术对比:前向渲染与延迟渲染 前向渲染采用逐物体处理方式,直接计算所有光源对像素的影响,适合透明物体渲染和移动平台。延迟渲染则分阶段处理,先存储几何数据到G-Buffer,再统一计算光照,能高效处理大量动态光源。延迟渲染天然适合后处理效果,但存在G-Buffer精度损失和移动端带宽问题。混合渲染方案如Forward+可结合两者优势。技术选型需考虑场景需求:前向渲染适合轻量级项目,延迟渲染则更适合多光源场景和高级后处理需求。
2025-07-08 21:18:33
520
原创 Open gl 02 实现立方体缩放偏移旋转
矩阵会使物体在世界坐标系中的位置和姿态发生变化,而不是改变相机的视角,从而无法实现相机沿着视觉方向移动的效果。例如,当想要模拟相机向前移动时,如果修改。矩阵来实现沿着视觉方向移动,会导致物体本身的位置和方向发生改变,而不是相机视角的移动。要实现沿着视觉方向移动,也就是沿着相机的前向向量移动。矩阵主要用于对物体进行局部变换(如旋转、缩放、平移),而视图矩阵。矩阵,会看到物体向相机靠近,而不是相机向前移动去观察物体。用于定义相机的位置和方向。
2025-05-03 17:45:09
926
原创 Open gl 01 绘画矩形
在 OpenGL 中,要实现绕三角形的某个顶点旋转,不能直接进行旋转操作,因为 OpenGL 中的旋转默认是绕原点进行的。在 OpenGL 中,矩阵乘法的顺序决定了变换的顺序。从右到左依次进行变换,即先执行最右边矩阵对应的变换,再依次执行左边矩阵对应的变换。这个顺序保证了先将旋转点平移到原点,然后进行旋转,最后将旋转点平移回原来的位置。是 OpenGL 内置变量,用于存储顶点的最终位置,这里将顶点位置转换为齐次坐标赋值给它。在绕顶点旋转的代码中,我们将组合好的变换矩阵。用于指定从顶点数据中读取的位置信息,
2025-04-26 17:18:28
1772
原创 solution:模型导入unity中缺面
1.原因:在三维软件中,面的显示与法线相关。法线是垂直于面的向量,决定面的朝向。渲染引擎通常只渲染法线正面的面。在 Blender 建模时,若操作不当,部分面的法线可能朝反面。将这样的模型导入 Unity 后,按照 Unity 的渲染规则,这些法线朝反面的面不会被渲染,导致模型缺面。2.解决办法: 在blender中打开面朝向显示,框选所有面后,摁住快捷键shift+n 翻转面。
2025-04-22 16:58:00
223
原创 Shader07 Gold Shader
注意,smoothnessstep后再取反和高光色相乘,有利于防止在前边直接取反后去点乘造成的可能整个模型都变白的情况。而是需要将贴图从切线空间转向世界空间后代替前面所使用的每一个法线向量节点。可以使用法线贴图添加,但注意此处不能直接将贴图连接到主节点上,世界空间下视角乘以世界空间下法线可获取到基本高光。利用主光方向和视角向量取平均值后和法线向量点乘。补充:用1减去这个效果后可实现简单边缘光。可以通过主光和法向量点乘后的结果提亮实现。使用菲涅尔效果实现外边的微金属光泽。
2025-04-17 21:09:00
191
原创 Shader06 ToonGlassShader
将全部效果相加后,分离四个通道,输出x y z(rgb)通道再合并连接到basecolor ,w通道连到alpha实现透明水杯效果。主光源方向减物体空间下视觉方向可以实现光影随视觉方向有所改动的动态效果,比起直接将点向量和光线方向点乘更加生动。内高光与外高光思路几乎相同,多了反转并且将边缘由原先外高光+0.5变为-0.5。直接使用视觉向量和法线向量点乘的结果,smoothness平滑过渡。利用菲涅尔效果加上smoothness节点平滑后乘以外高光颜色。将前面的主光源高光加上视觉方向高光,乘以一个高光颜色。
2025-04-17 20:44:51
185
原创 Shader04 CelShader
此处用2023版本的unity中的 Main Light Direction 节点,反向后和物体的法线向量点乘,重新映射到0-1范围,得到基本光照模型。(1)将重映射的节点分为多个俩俩一组后相加,从-1~1 0.75~-0.75 0.5~-0.5 0.25~-0.25 0.99~0。全部划分后再相加,相加后可以放大各层之间的差异,除以九则得到了四组色块分区。实现要点:分区(利用step节点不断叠加后除以叠加节点数)+ 高光 (实现镜面反射高光)注意:法线向量用的是视觉空间下,可以使高光随视角移动。
2025-04-17 19:59:44
212
原创 Shader03 瓶中水渲染
1.关键问题:物体世界坐标减去物体空间坐标,可以理解为物体空间原点在世界空间下的坐标,这样便获得了一个定点,与其他采样点进行比较,利用step节点,高于定点y值便透明(1),小于便实心(0),无论瓶子如何转动均不会影响。2.渲染水面和瓶面颜色。利用branch节点。
2025-04-17 17:00:02
162
原创 Shader01 Grass 渲染
注意,并不是直接将原先合并的效果简单乘以渐变,而是利用lerp插值节点,实现平滑过渡。黑色(值为1)时,既底部,为不发生偏移的原先位置,0则使用偏移位置。3.将x偏移量和原来position分离出来的y z量结合进行输出前,还需把世界坐标转换为物体空间后输出(HDR高清渲染管线中还需再减去相机位置)利用噪声图在x方向对草的顶点进行偏移,噪声图模拟随机效果(既有向正方向运动的草,也有负方向运动的草)利用uv在y(既v)上面的渐变分布,控制底部(黑色)不动。关键:time和uv偏移相连,乘以噪声图制作动效。
2025-04-17 15:51:32
227
原创 Shader02 Bubbles 渲染
(2).法线向量取绝对值后平方(平方可用于加剧/减缓差距),分离后会得三个轴均匀分布的向量,合并之后的贴图结果混合均匀。利用反射探针,模拟周围环境反射到泡泡上,加上菲涅尔效果,模拟泡泡边缘透亮效果。2.基本颜色 (渐变的泡泡动效贴图+泡泡基本色 blend)(1).将位置作为uv输入,可以避免中间有割裂的缝。1.alpha 透明度通道。
2025-04-14 19:37:26
361
原创 知识点:滤波
定义:图像滤波是通过特定算法对图像像素进行处理,抑制噪声、平滑图像或增强特定特征的技术。本质:相当于给图像加 “滤镜”,通过邻域像素的运算(如平均、排序、加权等),保留有用信息,去除干扰(噪声)。目的:改善图像质量(去噪、平滑)、为后续处理(边缘检测、特征提取)做准备。噪声类型首选算法次选算法原理适配性椒盐噪声中值滤波双边滤波排序去极端值高斯噪声高斯滤波均值滤波加权抑制正态分布噪声混合噪声双边滤波中值 + 高斯双重权重保边去噪低算力场景均值滤波FXAA(后处理)
2025-04-10 23:49:34
1634
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅