技术栈
shader
mxwin
4 天前
unity
·
游戏引擎
·
shader
Unity Shader 切线空间数据是如何计算出来的
从建模软件的计算、到Unity的导入,再到最终的Shader构建,切线空间的计算是一套贯穿整个美术-技术流程的完整逻辑。不过这里需要先澄清一个关键点:切线空间的核心数据(切线 Tangent、手性标志 w),是在导入Unity时就已经计算好的,而不是在Shader运行时动态生成的。Shader的任务只是使用这些数据。
mxwin
4 天前
unity
·
游戏引擎
·
贴图
·
shader
Unity Shader 法线贴图跟切线空间有什么关系
法线贴图与切线空间的关系,是 “存储空间” 与 “参考系” 的关系:法线贴图中的颜色信息,本质上描述的是在切线空间下的扰动法线方向。
mxwin
4 天前
unity
·
游戏引擎
·
贴图
·
shader
Unity Shader 贴图和采样的关系 如何保证贴图清晰
简单来说,贴图是包含颜色数据的“仓库”,而采样是GPU从仓库里取出数据并为像素“上色”的过程。首先,我们来理解一下这个基本过程。在Shader中,程序会根据模型顶点上的UV坐标,快速计算出你当前看到这个像素在贴图上的对应位置(这个过程称为“纹理映射”),然后去调取该位置的颜色。如果完全一对一地调取,画面就会像“马赛克”。
mxwin
5 天前
unity
·
游戏引擎
·
shader
Unity Shader 什么是球谐光照 原理是什么
球谐光照(Spherical Harmonics Lighting,简称SH光照)是Unity中一种高效编码低频环境光照的技术,主要用于Light Probe(光照探针)和Skybox环境光的漫反射计算。它的核心价值在于:用极少的参数(通常9个浮点数)就能近似表达一个物体周围360°的入射光照分布,并在Shader中快速计算出物体表面接收到的漫反射光。
玉夏
6 天前
unity
·
shader
【Shader基础】CG/HLSL 基础语法
CG (C for Graphics) 是 NVIDIA 于 2002 年提出的面向 GPU 的中级着色语言,其语法高度派生自 C 语言,加入了面向图形处理的向量/矩阵原生类型和语义绑定机制。HLSL (High-Level Shading Language) 是微软为 DirectX 平台设计的着色语言,两者语法高度同源(NVIDIA 曾与微软合作统一规范),在 Unity 中可以互换使用。
mxwin
9 天前
unity
·
游戏引擎
·
shader
Unity Shader 冰面 Shader 制作原理与流程
这个 Shader 的目标不是「画一张冰贴图」,而是用 多层纹理 + 视差采样 + PBR 光照 + 深度透明 组合,在实时渲染里模拟冰的 体积感、内部吸收、表面高光和边缘融合。
mxwin
10 天前
unity
·
游戏引擎
·
shader
Unity URP下新技术MSSPT 取代SSR和光线追踪
SSR的同痛点,无法反射屏幕外信息关于MSSPT,目前有一个好消息,也有一个“坏消息”。好消息是,它确实是一项让人眼前一亮的新技术,专门用来解决我们刚才聊到的“SSR反射不了屏幕外物体”这个痛点。
mxwin
14 天前
unity
·
游戏引擎
·
shader
Unity Shader Shiny SSRR
Shiny SSRR(Kronnect 的 Screen Space Raytraced Reflections)是一套实时屏幕空间反射方案:不依赖 Reflection Probe 烘焙,也不做镜面相机,而是在当前帧的 Depth / Color 等缓冲里做光线步进(ray marching),把「屏幕上已经画出来的内容」当作反射源。
mxwin
18 天前
unity
·
游戏引擎
·
shader
Unity Shader URP 使用模板测试 · 深度测试实现秘境空间效果
传送门、X光透视窗、镜中世界、密室入口——这些"开个洞看见另一个空间"的效果,背后都是同一套技术:模板缓冲区(Stencil Buffer)。它能让GPU在像素级别精确决定"哪里能画、哪里不能画"。
mxwin
1 个月前
unity
·
游戏引擎
·
shader
unity shader中 ddx ddy是什么
在 Unity Shader 的 HLSL 中,ddx 和 ddy 是用于计算屏幕空间偏导数的函数。它们只能在片段着色器(Fragment Shader) 中使用,用于衡量某个变量在屏幕上沿 X 或 Y 方向的变化速率。
mxwin
1 个月前
unity
·
游戏引擎
·
shader
Unity SetPassCall和DrawCall的区别是什么
在 Unity 中,SetPassCall 和 DrawCall 是两个密切相关但含义不同的性能指标。简单来说:
mxwin
1 个月前
数码相机
·
unity
·
游戏引擎
·
shader
在unity shader中,通过pass产生阴影,通过主pass的光照 接收阴影!那么问题来了,是先产生阴影吗?还是先接收阴影,执行顺序是啥呢
简单来说,答案是 ShadowCaster Pass 先执行,用来生成场景的“深度地图”;然后 ForwardBase 等主 Pass 才会去使用这张地图,来计算和绘制阴影效果。
小贺儿开发
1 个月前
人工智能
·
unity
·
ai
·
shader
·
绘画
·
影视
·
互动
《唐朝诡事录之长安》——盛世马球
去年 11 月中旬,《唐朝诡事录之长安》播出,长安城风云再起。我尤其喜爱“盛世马球”单元,便以此为灵感展开创作:利用 AI 生成纹理,结合 Photoshop 制作法线、粗糙度等贴图,并在 Unity 中完成模型搭建与交互设计,实现可缩放、可旋转的细致查看效果。
mxwin
1 个月前
unity
·
游戏引擎
·
shader
Unity Shader 半透明物体为什么不能写入深度缓冲?
从 Depth Buffer 原理到 URP Shader 实战,彻底搞懂半透明渲染的每一个环节Chapter 01
mxwin
1 个月前
unity
·
游戏引擎
·
shader
Unity Shader 手写基于 PBR 的 URP Lit Shader 核心光照计算
深入解析 Cook-Torrance BRDF 各项含义,GetMainLight()、UniversalFragmentPBR() 调用方式,以及能量守恒原则
mxwin
1 个月前
unity
·
游戏引擎
·
shader
Unity GPU Shader 性能优化指南
Warp/Wavefront 层面的深度优化与 Profiling 实战在现代游戏和实时图形应用中,GPU 是性能的关键战场。与 CPU 不同,GPU 采用大规模并行架构——一次处理成千上万个像素。这种架构既是我们优化收益最大的地方,也是最容易踩坑的地方。
mxwin
1 个月前
unity
·
游戏引擎
·
shader
Unity Custom Interpolators与半透明阴影的原理与实战
深入剖析 URP 渲染管线中两个容易被忽略的关键问题: 插值寄存器(Interpolator)的数量瓶颈与打包技巧,以及半透明阴影的底层限制与三种可用的 workaround。 本文包含完整的 HLSL 代码示例与原理示意图。
小贺儿开发
1 个月前
unity
·
人机交互
·
shader
·
摄像头
·
面具
·
互动
·
脸部捕捉
【MediaPipe】Unity3D 虚拟面具互动演示
基于 Unity3D 与 MediaPipe Unity Plugin,利用普通摄像头实现人脸关键点的实时识别与追踪,并驱动面具的三维模型进行联动展示。按下空格键后,通过 Shader Graph 实现贴图 Mask 的动态切换效果,同时在界面左侧以打字机动画形式呈现对应文本。
mxwin
2 个月前
jvm
·
unity
·
游戏引擎
·
shader
Unity Shader 屏幕空间反射 (SSR) 原理解析
深入理解 URP 中 SSR 的实现原理、工作流程与性能优化策略,附带完整案例分析与代码实现屏幕空间反射(Screen Space Reflection,简称 SSR)是一种实时反射技术,它利用当前渲染帧的深度缓冲区和颜色缓冲区来计算反射效果。与传统的基于屏幕外渲染(Render Target)的反射方法相比,SSR 可以更高效地生成接触反射、湿润表面反射等效果。
mxwin
2 个月前
unity
·
游戏引擎
·
shader
Unity Shader 屏幕空间法线重建 从深度缓冲反推世界法线——原理、踩坑与 URP Shader 实战
在 Unity URP 管线下,_CameraNormalsTexture 并非默认开启。如果后处理效果(SSAO、SSR、屏幕空间贴花、轮廓描边等)需要法线信息,你有两条路: