粗糙表面的边缘为什么会变暗?聊聊被忽视的几何遮蔽函数 G
有一次我在调一个金属材质,把粗糙度拉到 0.8,然后发现球体的边缘——也就是那圈掠射角的地方——亮得离谱,像镀了一层发光的塑料膜。我盯着那圈假到不行的高光看了很久,最后翻代码才发现,我的 BRDF 实现里把几何项 G 直接写成了常数 1。这件事让我第一次真正理解 G 是干什么的。它平时藏在 Cook-Torrance 那一堆符号里,存在感极低,D 和 F 抢尽了风头,但一旦缺席,整个材质就会露出破绽。这篇文章想把 G 讲透。它的输入是什么、输出是什么、到底在物理上对应什么东西,以及为什么少了它会出问题。先说清楚:有两个 G,别搞混在你继续往下读之前,我得先排个雷。图形学里有两个东西都叫"几何函数 / 几何项",记号都是 G,但它们是完全不同的两回事:一个是微表面模型里的几何遮蔽函数,藏在 BRDF 内部,管的是材质表面那些微观凹凸小平面的自遮挡。另一个是渲染方程写成面积分形式时冒出来的几何项G(p,p′)G(p, p')G

相关新闻

深入理解渲染方程中的半球积分 ∫Ω

深入理解渲染方程中的半球积分 ∫Ω

写在前面 如果你曾经好奇过:为什么游戏里的金属会闪闪发光?为什么阴影处的物体不是纯黑的?为什么皮肤看起来那么柔和真实? 这一切的答案,都藏在一个看似简单却极其深刻的数学符号里——半球积分 ∫Ω。 今天我们就来彻底搞懂它。 一、先从一个直觉问题开始 想象你正站…

2026/8/29 19:38:11 阅读更多 →
从零实现C语言内存函数:memcpy、memmove与memcmp的原理与优化

从零实现C语言内存函数:memcpy、memmove与memcmp的原理与优化

1. 项目概述:从“黑盒”到“白盒”的内存操作探索在C语言的日常开发中,我们频繁地与内存打交道。当你需要复制一大块数据、移动一段内存区域,或者比较两块内存内容是否完全一致时,你大概率会直接调用标准库提供的memcpy、memmove和…

2026/8/29 19:37:11 阅读更多 →
Python实现区块链P2P网络与工作量证明共识机制

Python实现区块链P2P网络与工作量证明共识机制

1. 实验背景与核心目标:从“记账”到“共识”的跨越如果你已经跟着前几个实验,把区块链的“单机版”账本玩明白了,比如怎么生成区块、怎么用哈希链起来,那你可能会觉得,这玩意儿好像也没那么神奇,不就是个带…

2026/8/29 19:37:11 阅读更多 →

最新新闻

2026企业AI办公选型指南:成员席位与AI用量管控评估

2026企业AI办公选型指南:成员席位与AI用量管控评估

引言不少企业引入AI办公平台时,将重心放在对话生成、智能体搭建、知识库能力等业务功能上,对席位分配、用量管控的后台治理模块缺少足够评估。平台上线之后,陆续出现席位分配混乱、算力消耗不可见、部门成本无法核算、离职账号未及时回收、算…

2026/8/30 23:59:05 阅读更多 →
用Python写贪吃蛇:从零实现pygame小游戏(含完整代码)

用Python写贪吃蛇:从零实现pygame小游戏(含完整代码)

学完 Python 基础语法之后,很多人都会陷入一个非常尴尬的阶段:print会写了,for循环也会了,但一提到“做点东西练手”,就不知道该从哪下手。太简单的脚本没有成就感,太复杂的项目又啃不动,最后只…

2026/8/30 23:59:05 阅读更多 →
基于EasySwoole与Redis构建高并发WebSocket客服IM系统实战

基于EasySwoole与Redis构建高并发WebSocket客服IM系统实战

简介:即时通讯(IM)系统是现代Web应用的核心功能之一,其核心在于通过WebSocket协议实现客户端与服务器的全双工实时通信。从技术原理上看,WebSocket克服了HTTP协议的无状态和单向通信限制,允许服务端主动推送…

2026/8/30 23:59:05 阅读更多 →
BlueNRG-2低功耗设计:GPIO端口保持与待机电流优化实战

BlueNRG-2低功耗设计:GPIO端口保持与待机电流优化实战

这个标题我盯了很久。LAT1220这篇文章,说实话,在BlueNRG-2的应用笔记里属于那种"不出名但救过命"的类型。如果你只跑官方的BLE例程,大概率一辈子碰不到它描述的问题;但只要你开始做电池供电的产品,琢磨怎么把…

2026/8/30 23:59:05 阅读更多 →
2026年企业级Work Agent科普:AI办公执行工具的落地全解析

2026年企业级Work Agent科普:AI办公执行工具的落地全解析

最近不少职场人都能感知到身边AI工具的变化,过去大家用AI大多是问思路、要大纲,所有后续的执行步骤还是要自己手动完成,现在越来越多的场景里,AI已经可以独立完成一整套完整的工作流:比如你只需要说一句“整理过去三个…

2026/8/30 23:59:05 阅读更多 →
Postman不是接口测试工具?Roblox怀旧邮差游戏与开发拆解

Postman不是接口测试工具?Roblox怀旧邮差游戏与开发拆解

先说一个容易踩的坑。你在搜索引擎里输入 postman,前几页大概率不是游戏,而是那个做接口调试的 Postman 工具。满屏都是 Postman 下载、Postman 汉化、Postman 接口测试教程,甚至还有“Postman 打不开”“Postman 忘记密码”这类问题。我这次…

2026/8/30 23:58:04 阅读更多 →

日新闻

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

每年校招季我都会接触不少准备数据库方向笔试的同学,看到最多的状态就是:简历上写着“熟悉 MySQL”“了解索引优化”,一碰到数据库管理工程师的笔试卷,却在索引、事务、锁、备份恢复这些题目上翻车。网易这套 2018 校园招聘数据库…

2026/8/30 0:00:01 阅读更多 →
数字电路时序基石:深入理解建立时间与保持时间

数字电路时序基石:深入理解建立时间与保持时间

1. 这不是“背公式”的事:时间参数到底在约束什么你翻过数字电路教材,一定见过这两个词:建立时间(Setup Time)和保持时间(Hold Time)。它们常被并列写在触发器(Flip-Flop&#xff09…

2026/8/30 0:00:01 阅读更多 →
蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

1. 项目缘起:从赛题到超声波测距机的诞生第八届蓝桥杯单片机设计与开发国赛的题目,我至今记忆犹新。它没有直接给出一个花哨的名字,而是用“超声波测距机”这个朴实无华的功能描述,精准地勾勒出了考核的核心。对于当时备赛的我而言…

2026/8/30 0:00:01 阅读更多 →

周新闻

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

每年校招季我都会接触不少准备数据库方向笔试的同学,看到最多的状态就是:简历上写着“熟悉 MySQL”“了解索引优化”,一碰到数据库管理工程师的笔试卷,却在索引、事务、锁、备份恢复这些题目上翻车。网易这套 2018 校园招聘数据库…

2026/8/30 0:00:01 阅读更多 →
数字电路时序基石:深入理解建立时间与保持时间

数字电路时序基石:深入理解建立时间与保持时间

1. 这不是“背公式”的事:时间参数到底在约束什么你翻过数字电路教材,一定见过这两个词:建立时间(Setup Time)和保持时间(Hold Time)。它们常被并列写在触发器(Flip-Flop&#xff09…

2026/8/30 0:00:01 阅读更多 →
蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

1. 项目缘起:从赛题到超声波测距机的诞生第八届蓝桥杯单片机设计与开发国赛的题目,我至今记忆犹新。它没有直接给出一个花哨的名字,而是用“超声波测距机”这个朴实无华的功能描述,精准地勾勒出了考核的核心。对于当时备赛的我而言…

2026/8/30 0:00:01 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/30 21:10:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/30 18:07:21 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/30 21:10:44 阅读更多 →