Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

渲染路径概述 一、定义 渲染路径(Rendering Path)是指在图形渲染过程中,图形引擎按照特定的步骤和顺序来处理场景中的几何、光照、材质等信息,最终生成屏幕上的图像的一种算法或策略。 它决定了图形引擎如何组织和执行渲染过程,以产生最终的视觉效果。 对于我们来说:在 Unity 中,渲染路径决定了光照如何应用到 Unity Shader 中,如果要在 UnityShader 中和光源打...

顶点渲染路径 一、顶点照明渲染路径处理光照的方式 顶点照明渲染路径仅仅只是前向渲染路径的一个子集 所有在顶点照明渲染路径中能实现的效果在前向渲染中都能实现 它对硬件的要求最低,运算性能最高,但是效果最差 不支持那些逐像素才能实现的效果,比如阴影、法线纹理、高精度高光反射等 基本思想: 所有的光都按照逐顶点的方式进行运算 在内置的渲染管线中,它最多只会记录 8 个光源数据,会根据光源类型、强度...

CShape代码修改材质 Unity中想要通过C#修改Shader中相关参数信息 一般都是通过材质去进行修改的 需要使用材质提供的各种相关方法进行修改 一、获取对象使用的材质 获取到对象的渲染器的Renderer MeshRenderer和Skinned Mesh Renderer都继承Renderer 通过里氏替换的原则父类获取,装载子类对象 通过渲染器获取到对应的材质 通过利用渲染器中...

Unity自带的全局雾效 一、全局雾效是什么? 全局雾效(Global Fog) 是一种视觉效果,用于在3D场景中模拟大气中的雾气对远处物体的遮挡 它通过在场景中加入雾的效果,使得距离摄像机较远的物体看起来逐渐被雾气覆盖, 从而创造出一种朦胧、模糊的视觉效果。 Unity当中本身就存在一个全局雾效功能 我们可以在Window—>Rendering—>Lighting窗口中的 ...

Bloom效果 一、Bloom效果是什么? Bloom效果(中文也可以叫做高光溢出效果),是一种 使画面中亮度较高的区域产生一种光晕或发光效果的图像处理技术 Bloom效果的主要目的是模拟现实世界中强光源在相机镜头或人眼中造成的散射和反射现象 使得画面中较亮的区域“扩散”到周围的区域,造成一种朦胧的效果 ## 二、基本原理 可以概括成以下三点 1. 提取:提取源图像中的亮度区域存储到一张新...

亮度、饱和度、对比度 在屏幕后处理的Shader中 需要设置深度测试、剔除、深度写入 - ZTest Always 打开深度测试 - Cull Off 关闭剔除 - ZWrite Off 关闭深度写入 主要是避免它"挡住"后面的渲染物体 1.基本原理 1.亮度 想要改变颜色的亮度 只需要对图像的每个像素点进行加法运算或乘法运算即可 也就是说,我们只需要在Shader当中加入一个控制亮度的fl...

屏幕后处理的基本原理 一、什么是屏幕后处理 屏幕后处理效果(Screen Post-Processing Effects)是一种在渲染管线的最后阶段应用的视觉效果 允许你在场景渲染完后对最终图像进行各调整和效果处理,从而增强视觉体验 常见的屏幕后处理效果: 景深、模糊、色彩调整 等等 二、基本原理 最关键的问题: 1. 如何获取游戏画面渲染完毕后的画面信息 2. 如何为 获取到的画面信息添加...

深度纹理实现全局雾效 一、为什么要实现深度纹理实现全局雾效 主要是因为Unity自带的全局雾效有一下几个缺点 1. 需要为每一个自定义Shader按照书写规则书写雾处理的代码 2. 自带的全局雾效无法实现一些自定义效果 比如: - 基于高度的雾效——可以用来做出悬浮的水雾效果 - 不规则的雾效(结合噪声图实现)——可以为雾增加随机性 - 动态变化的雾、基于纹理的雾等等 二、基本原理 1.基本...

网格、网格渲染器、材质、着色器之间的关系 一、基础定义 1.网格 网格是一个3D对象的几何数据。 它由顶点、边和面组成。网格描述了对象的形状和结构,定义了3D模型的轮廓。 网格中包含了模型的关键数据 比如: 顶点、法线、切线、纹理坐标、顶点颜色、骨骼权重、骨骼索引、网格边界等等信息 我们在shader中使用的模型的数据就来自于Mesh Unity中不带骨骼动画的模型网格数据一般在MeshFi...

深度纹理实现边缘检测 一、为什么要实现深度纹理实现边缘检测 之前的边缘检测原理是利用Socle算子基于像素灰度值检测计算而来 这种计算方式依赖于像素的颜色(灰度值)变化来识别边缘,会受到物体纹理和阴影颜色等因素的影响 这种方式可能不能反应出物体的真实轮廓 而基于深度+法线纹理来实现屏幕边缘检测屏幕后期处理效果 不受纹理和光照的影响,只会根据渲染物体的模型信息(深度、法线)进行判断 注意: -...