随笔分类 - 技术堆栈
摘要:categories: - 个人研究 - 技术美术 - 光照模拟 abbrlink: 3105478131 【技术美术】双向透射分布函数 透射部分的实现,网上资料很少,因此只能根据个人经验进行推导了。 主流的光照模型基于反射,反射分漫反射和镜面反射,而透射也同样可以定义为两种: 漫透射:指透射光穿越
阅读全文
摘要:categories: - 个人研究 - 技术美术 - 光照模拟 abbrlink: 2812972532 【技术美术】双向反射分布函数 在光的物理中,除了如辐射率、菲涅尔、几何遮蔽等现象,双向反射也是其中一种,因此接下来要学习反射现象对光照强度的影响。反射对光的衰减是一种线性变化,所以直接考虑计算
阅读全文
摘要:categories: - 个人研究 - 技术美术 - 光照模拟 abbrlink: 3 【技术美术】卡通风格渲染 卡通风格渲染是模仿人的手绘风格,而人的手绘也是对现实光学的模仿,所以卡通渲染的光照计算原理和PBR是一致的。但由于人力有限,没法非常写实(降低色阶、简化阴影),绘制时还需要打线稿辅助(
阅读全文
摘要:categories: - 个人研究 - 技术美术 - 光照模拟 abbrlink: 2656087290 【技术美术】光照技术概述 和现实一样,即使是游戏中的虚拟物体,我们也可以认为都是因为发光才可见,包括不含光照计算的特效,因为本质上他们是发出的自发光。所以说,任何物体的渲染,本质都是在做光的渲
阅读全文
摘要:categories: - 个人研究 - 技术美术 - 光照模拟 abbrlink: 2440912354 【技术美术】各项异性光照 各项同性与各项异性 一颗光滑的球被灯光照到,默认高光函数会形成一个圆斑,因为他用于计算高光的属性从任意表面向四周都是均匀相同的变化率(光滑的球面法线)。而在各向异性的
阅读全文
摘要:categories: - 个人研究 - 技术美术 - 光照模拟 abbrlink: 4246974515 【技术美术】次表面散射 此处次表面散射更准确的名字应该叫“次表面漫反射”,因为它不会发生透射现象,所以不应该称之为散射(散射应该是反射和透射的总称,典型的例子就是双向散射分布函数)。次表面散射
阅读全文
摘要:categories: - 个人研究 - 技术美术 - 光照模拟 - 基于物理的渲染 abbrlink: 1910260985 【基于物理的渲染(3)】基于图片的渲染 上述 CookTorrance 公式中还缺少环境光的处理,在 PBR 中环境光是用 IBL 实现的。 IBL 中由于光来自一个完整的
阅读全文
摘要:categories: - 个人研究 - 技术美术 - 光照模拟 - 基于物理的渲染 abbrlink: 1881413206 【基于物理的渲染(2)】Cook-Torrance BRDF BRDF 直译为双向散射分布函数,是一种解释光反射强度的模型。双向散射是指其将反射光描述为由镜射光和漫射光两种
阅读全文
摘要:categories: - 个人研究 - 技术美术 - 光照模拟 - 基于物理的渲染 abbrlink: 238111848 【基于物理的渲染(1)】反射率方程 能量守恒 光是一种能量,遵循的能量守恒原则,物体表面反射光的总量总是小于等于入射光的总量。 微表面模型 微表面模型是指采用了微分的思想看待
阅读全文
摘要:【技术美术】平面反射 如上图所示,实现平面反射说到底就是要实现,P 采样到 A,Q 采样到 B。A~B显然是需要渲染到纹理以供采样的,实现该过程有两种方法: 最简单的方式是放一个镜像的摄像机 E' 去渲染 A,B。 更高级的做法是E不动,但渲染每个物体的镜像(A',B'),因此需要给每个物体做一步镜
阅读全文
摘要:categories: - 个人研究 - 软件开发 abbrlink: 2533997342 【软件开发】如何做出好的项目 开发过程的规范 事物的名称规范 事物的位置规范 事物的作用域规范 如何确认程序需要优化 当你经常使用机械性动作来维护代时(如复制粘贴,查找替换等...)。 当你的代码太长经常修
阅读全文
摘要:【技术美术】模型文件构成 基于 glfw 推导得出,模型文件的内容构成如下: 一些节点 普通节点(所有节点的基类,可作为空物体、骨骼使用) 名称 变换信息 子节点索引 网格节点 普通节点信息 关联的网格索引 关联的蒙皮索引 相机节点 灯光节点 一些材质 名称 材质属性 一些网格 名称 一些基元(因为
阅读全文
摘要:categories: - 个人研究 - 质点弹簧 abbrlink: 2109274119 【质点弹簧】如何做一个不会崩溃的质点弹簧 演示视频见:https://www.bilibili.com/video/BV15vPie8EEd/ 在绳索、布料、软体等软性物质的模拟上,质点弹簧绝对是最流行的一
阅读全文
摘要:categories: - 个人研究 - 质点弹簧 abbrlink: 95218190 【质点弹簧】质点位置积分 在物理模拟中,物理系统每帧都需要根据粒子当前位置,速度,加速度等信息计算粒子下个阶段相关信息,而这种一点一点计算位置的操作被称作对粒子位置的积分。 具体而言实现这种积分效果的有两种方法
阅读全文
摘要:abbrlink: 1922506091 date: 2024-6-11 16:38 categories: - 个人研究 - 软件开发 【软件开发】Glob 通配符 *:匹配除"/"以外的字符。 **:匹配所有字符。 ?:匹配一个字符。 [...]:匹配指定字符,如[ABC]就匹配 ABC 三个字
阅读全文
摘要:abbrlink: 4146197106 date: 2024-7-16 9:08 categories: - 个人研究 - 软件开发 【软件开发】vcpkg 学习笔记 "vcpkg"是一个免费开源的 C++包管理器,可以以此很方便的处理第三方库的接入,且可嵌入进 CMake 中。 入门 入门教程请
阅读全文
摘要:abbrlink: 1794241118 date: 2024-6-11 16:38 categories: - 个人研究 - 软件开发 【软件开发】Doxygen 使用笔记 Doxygen 是通过代码注释生成文档的事实标准,借用该工具可以将文档内容与代码写在一起方便维护。 https://gith
阅读全文
摘要:abbrlink: 2795034225 date: 2024-7-16 9:07 categories: - 个人研究 - 软件开发 【软件开发】CMake 学习笔记 CMake 是什么? 是构建系统(如 Visual Studio)的文件(如 .vcxproj .sln)的创建器,具体要生成的构
阅读全文
摘要:abbrlink: 2308421870 date: 2024-6-11 16:38 categories: - 个人研究 - 软件开发 【软件开发】C++使用笔记 数据类型 值类型 存放在栈空间中的一段内存。 T:左值,最普通的变量,是具有变量名且可取地址的值。 \(~\) :右值,常量或不具备名
阅读全文
摘要:abbrlink: 2373330896 date: 2024-5-10 16:30 categories: - 个人研究 - 软件开发 【软件开发】正则表达式 正则表达式是一种强大的高级字符串匹配方法。 通配符 用于代表某些字符。 普通字符 .:除了换行回车符以外的任何单个字符。 \w:匹配任意一
阅读全文

浙公网安备 33010602011771号