【技术美术】投影矩阵和线性深度推导 【技术美术】投影矩阵和线性深度推导 网络上有很多投影矩阵的推导,也有很多声称是基于 Unity 的,但和我的实测都不一致(现在看来是因为这些文章并不全面),此外有一些 Unity 本身的函数我也搞不懂它的原理,遂最终选择自行研究,总算把这些问题解决了。 现在通过这篇文章,你就可以完全搞懂 Unity 的投影矩阵是啥样,又是怎么来的。以及 Unity 逆推线性深度的函数是如何实现的。不过该文章也不是 2025-12-23 技术堆栈 > 技术美术 > 空间矩阵
【技术美术】次表面散射 【技术美术】次表面散射 次表面散射的光照组成 次表面散射的光照结构: 从表面直接反弹的光(镜反射光) 进入物体内部的光 在内部经过多次反弹出射的光(漫反射光 + 漫透射光) 被遮挡较少或直接折射的光(镜透射光) 其中漫反射和漫透射本质是同一种光学现象,他们都是模拟光线从物体内部多次弹射的结果,两者的区分只是看出射方向是否超过入射方向的90度。故我认为应将他们统一视为“次表面漫散射”,只是 2025-12-23 技术堆栈 > 技术美术 > 光照模型
【技术美术】各向异性光照 【技术美术】各向异性光照 各向同性与各向异性 一颗光滑的球被灯光照到,默认高光函数会形成一个圆斑,因为他用于计算高光的属性从任意表面向四周都是均匀相同的变化率(光滑的球面法线)。而在各向异性的表面上,则有可能形成条纹,因为其用于计算光照的属性,在条纹的垂直方向和水平方向上变化率是不同的(例如切线)。简要来说: 各向同性:从物体表面一点往四周出发,其属性变化率都是一致的。 各向异性:从物体表面一点 2025-12-23 技术堆栈 > 技术美术 > 光照模型
Unity开发规范 Unity开发规范 从秦时起就有“书同文,车同轨”的概念,没有一个统一的标准,将会给多人协作,甚至个人维护都带来严重的问题,因此人们定义了一个又一个的标准,对于Unity开发同样如此。 标准定义的原则 本身简单易于传播,不要把学习标准变成一种负担。 能显著提高项目的可读可维护性,基于效率而产生。 只定有用的规则,不要搞一堆花里胡哨的面子工程。 标准定义的参考 基于.Net官方的类库开发准则。 2026-01-29 框架使用 > Unity > Unity开发规范
Unity资源规范 Unity资源规范 命名规范 一个资源该如何命名? 优先使用英文命名、其次中文,不建议使用汉语拼音。 如果定好了命名语言,尽可能保证同一文件夹的文件都统一,别混用。 123ShiZi //不建议(必须人工解读,但没有声调和上下文,难以正确解读。石子、狮子、柿子?)Persimmon //正确(放入翻译软件中即可得为:柿子)柿子 //正确(一眼看懂,但部分底层软件存在兼容问题,但不会影响功能 2026-01-29 框架使用 > Unity > Unity开发规范
Unity编码规范 Unity编码规范 结构规范 让最常用的成员排在前列,让最相关的成员排在一起,便于快速索引有效信息和提示成员功能。 确定类成员的布局方式 按访问修饰符排序:公开->保护->私有[SerializeField]->私有 按是否为静态排序:静态->非静态 按具体类型排序:数据定义->事件->字段->属性->函数 按逻辑关系排序:Unity事件、成对 2026-01-29 框架使用 > Unity > Unity开发规范
【技术美术】双向反射分布函数 【技术美术】双向反射分布函数 在光的物理中,除了如辐射率、菲涅尔、几何遮蔽等现象,双向反射也是其中一种,因此接下来要学习反射现象对光照强度的影响。反射对光的衰减是一种线性变化,所以直接考虑计算最终的系数即可。 漫反射系数 漫反射因为多次反弹的缘故,其入射信息颜色等都大幅丢失,所以其表现效果均匀柔和,而且计算方法也变的非常简单。 不过根据能量守恒,除非是发生了遮蔽,不然入射光和出射光强度应该是相同的 2025-12-23 技术堆栈 > 技术美术 > 光照模型
【技术美术】光照技术概述 【技术美术】光照技术概述 和现实一样,即使是游戏中的虚拟物体,我们也可以认为都是因为发光才可见,包括不含光照计算的特效,因为本质上他们是发出的自发光。所以说,任何物体的渲染,本质都是在做光的渲染。 光的属性 可溯源的:光不是凭空产生的,一定是有源头的。 可传递的:光是可以通过介质传递的,也正是因为传递会使光的能量发生变化,我们才能观测到传递的介质。 可叠加的:光的能量可以直接简单的相加来合成的, 2025-12-23 技术堆栈 > 技术美术 > 光照模型
【数学】泰勒级数 【数学】泰勒级数 泰勒级数是一种展开函数的方式,可用于将一些无法直接求解的函数转化为无穷个可以简单求解的分量的累加,从而选择性的获取与原近似的结果。一个函数的泰勒级数展开方式如下: f(x)=f(x0)+f′(x0)1!(x−x0)+f′′(x0)2!(x−x0)2+f′′′(x0)3!(x−x0)3+…f(x)=f(x_0)+\frac{f'(x_0)}{1!}(x-x_0)+\fr 2025-06-09 书本知识 > 数学 > 微积分
【从零开始的技美之旅(1-5)】实现PBR光照 【从零开始的技美之旅(1-5)】实现PBR光照 理论上现在已经能成功实现绘制网格了,但由于片段着色器过于简单,所以画面并不出好看。所以现在来实现最关键常用的光照部分。 -【技术美术】光照模型 -【技术美术】光照技术概述 将上述光照技术组合使用后即可拼出完整的 PBR 光照模型。 2025-12-04 教程分享 > 从零开始的技美之旅 > 第一期:从黑暗到光明